杨辉三角定义如下:
1
/ \
1 1
/ \ / \
1 2 1
/ \ / \ / \
1 3 3 1
/ \ / \ / \ / \
1 4 6 4 1
/ \ / \ / \ / \ / \
1 5 10 10 5 1
今天小小白复习生成器,(后面还有关于拷贝的坑)
刚好在通过廖老师来复习,就做了一下廖老师留的课后题
我是用了两个列表来实现的,一个来记录上一次的列表,另一个来改变
def fuc():
n=0
result=[]
a=[]
while n<10:
result.append(1)
a=result.copy()#此处应该为拷贝(复制一份) 不能直接a=result这样a会跟着result改变
if len(result)>=3:
print(a)
for i in range(1,len(result)-1):
result[i]=a[i]+a[i-1]
print(result)
n+=1
yield result
至于深浅拷贝的问题可参考这篇文章https://www.cnblogs.com/pyramid1001/p/5844905.html