python实现杨辉三角思路

yipeiwu_com7年前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实现的选择排序算法原理与用法实例分析

Python实现的选择排序算法原理与用法实例分析

本文实例讲述了Python实现的选择排序算法。分享给大家供大家参考,具体如下: 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中...

python ElementTree 基本读操作示例

示例可以附件中下载 1.加载xml文件 加载XML文件共有2种方法,一是加载指定字符串,二是加载指定文件 2.获取element的方法 a) 通过getiterator b) 过 get...

python解析xml简单示例

本文实例讲述了python解析xml的方法。分享给大家供大家参考,具体如下: xml是除了json之外另外一个比较常用的用来做为数据交换的载体格式。对于一些比较固定的数据,直接保存在xm...

python编写简易聊天室实现局域网内聊天功能

本文实例为大家分享了python实现局域网内聊天功能的具体代码,供大家参考,具体内容如下 功能: 可以向局域网内开启接收信息功能的ip进行发送信息,我们可以写两段端口不同的代码来实现...

Python定时任务sched模块用法示例

本文实例讲述了Python定时任务sched模块用法。分享给大家供大家参考,具体如下: 通过sched模块可以实现通过自定义时间,自定义函数,自定义优先级来执行函数。 范例一 imp...