Maison >développement back-end >Tutoriel Python >Un exemple d'introduction à la méthode du triangle de Yang Hui en Python

Un exemple d'introduction à la méthode du triangle de Yang Hui en Python

零下一度
零下一度original
2017-07-27 09:26:022336parcourir

La sortie du programme doit obtenir les effets suivants :

[1]
[1,1]
[1,2,1]
[1,3,3,1]

......

Méthode : itération, générateur

def triangles()
    L = [1]
    while True:
        yiled L
        L =[1] + [L[i] + L[I+1] for i in range(len(L)-1)] + [1]
n = 0
for t in triangles():
    print(t)
    n += 1
    if n == 10:
        break

Logique de mise en œuvre :

1. Puisque rendement est la sortie d'interruption du générateur, la première sortie est [1]

2. Continuez la boucle après rendement en dessous de while, et la longueur de la liste est de 1 à ce moment-là, remplacez-le par len(L) dans L et obtenez [L[i]+L[i+1] for i in range(1-1)], qui est une valeur nulle, donc la sortie de rendement L est [1 , 1]

3. À ce stade, la valeur de len(L) est 2 et le résultat de la substitution est [L[i]+L[i+1] pour i in range(2-1 )] comme [L[i] ]+L[i+1] pour i in range(1)], je peux prendre la valeur 0, et après substitution, c'est [L[0]+L[1]], et les valeurs de L[0] et L[1] Les valeurs sont toutes 1 (comme le montrent les résultats ci-dessus), donc le résultat de sortie est [1,2,1]

4. D'après le troisième article, on peut voir que la valeur de len(L) est 3 à ce moment-là, et la substitution donne [L [i]+L[i+1] pour i in range(2)] , la valeur de i est 0 et 1, il y a deux valeurs sorties via la boucle, les deux valent respectivement 3 [L[0]+L[1 ]],[L[1]+L[2]]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn