<分区>
在对文本文件和列表进行迭代期间,我发现了 for
循环的意外行为。
文本文件 test.txt
仅包含两个字符串:1) He said:
和 2) We said:
。
第一个for
+for
循环
file_ = open('c:\\Python27\\test.txt', 'r')
list_ = ['Alpha','Bravo','Charlie']
try:
for string in file_:
for element in list_:
print string, element
except StandardError:
print 'Ooops'
返回完全符合预期的结果:
He said: Alpha
He said: Bravo
He said: Charlie
We said: Alpha
We said: Bravo
We said: Charlie
但是如果for
顺序改为
file_ = open('c:\\Python27\\test.txt', 'r')
list_ = ['Alpha','Bravo','Charlie']
try:
for element in list_:
for string in file_:
print string, element
except StandardError:
print 'Ooops'
结果完全不同:
He said: Alpha
We said: Alpha
看起来第一个 for
变得可联合。为什么?