一个简单的生成器的问题,AI都无法正确回答,有大神出来说二句吗

def create_iterator(n):
print(“Creating iterator”)
i = 0
while i < n:
yield i
i += 1

iterator = create_iterator(5)
print(“Iterator created, but not iterated yet.”)
for item in iterator:
print(item)

这段代码运行结果,AI都给出的是错误的答案,实际的结果是:
Iterator created, but not iterated yet.
Creating iterator
0
1
2
3
4

AI认为(文星、豆包、Kimi):
Creating iterator
Iterator created, but not iterated yet.
0
1
2
3
4

有大神出来分享一下不?

讨论数量: 1

:flushed:AI估计是按照执行逻辑去理解的,但是yield是在迭代的时候才生成~

1周前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!