python实现杨辉三角思路

yipeiwu_com6年前Python基础

程序输出需要实现如下效果:

[1]

[1,1]

[1,2,1]

[1,3,3,1]

......

方法:迭代,生成器

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

实现逻辑:

1.由于yield为生成器中断输出,所以有了第一个次输出为[1]

2.继续while下面的yield后的循环,此时list长度为1,将其代入L中的len(L),得出[L[i]+L[i+1] for i in range(1-1)]得出为空值,所以yield L输出为[1,1]

3.此时len(L)值为2,代入得出[L[i]+L[i+1] for i in range(2-1)]为[L[i]+L[i+1] for i in range(1)],i能取值为0,代入后为[L[0]+L[1]],而L[0]和L[1]的值均为1(有上面结果可知),所以输出结果为[1,2,1]

4.由第三条可知此时len(L)值为3,代入得出[L[i]+L[i+1] for i in range(2)],i取值为0和1,通过循环输出有两个值,均为3,分别由[L[0]+L[1]],[L[1]+L[2]]

以此类推即可

相关文章

python实现查找excel里某一列重复数据并且剔除后打印的方法

本文实例讲述了python实现查找excel里某一列重复数据并且剔除后打印的方法。分享给大家供大家参考。具体分析如下: 在python里面excel的简单读写操作我这里推荐使用xlrd(...

Python利用WMI实现ping命令的例子

WMI是Windows系统的一大利器,Python的win32api库提供了对WMI的支持,安装win32api即可使用 WMI。 本例通过WMI的WQL实现ping命令。 impo...

Flask框架学习笔记之使用Flask实现表单开发详解

Flask框架学习笔记之使用Flask实现表单开发详解

本文实例讲述了使用Flask实现表单开发。分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head...

flask框架配置mysql数据库操作详解

flask框架配置mysql数据库操作详解

本文实例讲述了flask框架配置mysql数据库操作。分享给大家供大家参考,具体如下: 该篇博客配置环境为:python版本3.5,flask2.0,python3中已经不再支持MySQ...

python概率计算器实例分析

本文实例讲述了python概率计算器实现方法。分享给大家供大家参考。具体实现方法如下: from random import randrange #randrange form ra...