Discuss / Python / 一个问题

一个问题

Topic source

范巴i特

#1 Created at ... [Delete] [Delete and Lock User]

一个大神的答案:

-- coding:utf-8 --

def triangles(): L = [1] while True: yield L L.append(0) L = [L[i-1] + L[i] for i in range(len(L))]

n=0 for t in triangles(): print(t) n = n + 1 if n == 10: break

试了一下是对的,想问为什么函数triangles竟然可以迭代啊??

这个函数不是加了yield吗,那就不是一个普通函数而是generator,而generator是可迭代对象


  • 1

Reply