0
在Python 3.5这将返回一个发电机,但没有产量:不“屈服” A作业发生功能
def square(n):
return (x**2 for x in range(n))
print(square)
# <function square at 0x7f1ad0990f28>
print(square(10))
# <generator object square.<locals>.<genexpr> at 0x7f1ad08e0af0>
除了更加明显发电机的功能,有没有理由喜欢产生“版的版本,像
def square(n):
for x in range(n): yield x**2
print(square)
# <function square at 0x7f1ac413ed90>
print(square(10))
# <generator object square at 0x7f1ad08e0d58>
对我来说,他们似乎相同的工作。
就是这样,现在我明白了什么试图告诉我。 –