将其转换为列表时出现奇怪的迭代器行为

时间:2018-10-28 19:33:09

标签: python python-3.x iterator

考虑下面的代码,我听不懂:

import re
m = re.finditer(r"abc","cde abc xyz") #matches all the KW
print(list(m)) # prints [<_sre.SRE_Match object; span=(4, 7), match='abc'>]
print(list(m)) # prints []

就Im而言,第二个print(list(m))应该输出与第一个完全相同的东西。但是以某种方式评估list(m)会删除m所指的内容。怎么可能呢?

0 个答案:

没有答案