1. Definición:
2, basado en la definición de impresión
# - * - Codificación:. UTF-8 - * - # Version: python3.7 n- . = 6 Triángulo = [[1], [1,1. ]] Para I en la gama (2, n-): # se ha dado de las dos primeras líneas , por lo tanto para las líneas restantes [. 1] CUR = # la primera definición de cada fila de elementos de pre Triángulo = [-I 1.] # en la línea de J en Rango (1-I.): # tiempos de conteo cur.append (pre [j ] + pre [J + 1. ]) cur.append ( 1. ) triangle.append (CUR) Imprimir (triángulo) resultados de: [[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1], [1, 5, 10, 10, 5, 1]]
# - * - codificación: utf-8 - * - # versión: python3.7 n = 6 triángulo = [] para i en rango (n): cur = [1 ] triangle.append (act) #先追加进去 si i == 0: continuar pre = triángulo [i-1 ] para j en rango (i-1 ): cur.append (pre [j] + pre [j + 1 ]) cur.append ( 1 ) de impresión (triángulo)
3, el método de impresión de hasta 0
# - * - codificación: utf-8 - * - # versión: python3.7 n = 6 triángulo = [[1], [1,1 ]] para i en rango (2 , n): NewRow = triángulo [i- 1 ] newrow.append (0) fila = [Ninguno] * (i + 1) # 开辟空间 para j en rango (i + 1 ): fila [j] = NewRow [j-1] + NewRow [j] triángulo. append (fila) de impresión (triángulo) 执行结果: [[ 1], [1, 1, 0], [1, 2, 1, 0], [1, 3, 3, 1, 0], [1, 4 , 6, 4, 1, 0], [1, 5, 10, 10, 5, 1]]
4, la simetría de la impresión (índice)
# - * - Codificación:. UTF-8 - * - # Version: python3.7 n- . = 6 Triángulo = [. [1], [1,1 ]] para I en la gama (2 , n-): Fila = [. 1] * (. I + 1 ) para J en Rango (I // 2 ): # allí figura conocida: aproximadamente la mitad del valor crítico, entonces un examen cuidadoso Val = Triángulo [J] + Triángulo [-I 1.] [[1-I.] . 1 + J ] Fila [J hecho +1] = Val Fila [I -J- 1] =. Val # ley aquí: dos valores iguales y simétricas índice i triangle.append (fila) Imprimir (Triangle) resultado de la ejecución: [ [1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1], [1, 5, 10, 10, 5, 1]]
5, para una sola lista, la rebanada se completa
# - * - coding:. UTF-8 - * - # Versión: python3.7 n . = 6 Fila = [1] * n para que en Rango (n): # n de la enésima fila Viejo = 1 # comienzo vieja 1 de J en la gama (I // 2 ): Val = + antiguo fila [. J + 1 ] viejo = fila [j + 1] # aquí ahora valor de fila [j + 1] se asigna a edad, están cubiertos para evitar fila [J + 1.] = Val SI = I 2 *! J: fila [I -j- 1.] = Val
imprimir (fila [: i + 1])
Los resultados:
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1 ]