我知道yield 会动态生成一个值,据我所知,这意味着它不会将值保留在内存中,因此当前值不应该与最后一个值进行交互。但我只想确定是这样,有人可以确认是否可能吗?我将使用5作为number的值。没有发电机的例子:def factorial(number): result = number if number <= 1: return 1 else: for x in reversed(range(1, number)): # (4,1) reversed result *= x # 5*4*3*2*1 return result # returns 120是否可以通过使用 yield 函数来做同样的事情?如何?谢谢
添加回答
举报
0/150
提交
取消