猿问

为什么“for line in file:”只能使用一次?

我有一个简单的问题,我在里面存货!


for line1 in file:

    print(line1)

for line2 in file:

    print(line2)

for line3 in file:

    print(line3)


我希望这可以工作 3 次,但仅适用于“文件中的第 1 行:”工作。


呼唤远方
浏览 593回答 1
1回答

森林海

因为文件是作为迭代行的一部分读取的。您需要每次都重新打开文件,或者将整个文件读入行列表(可能通过 file.readlines() )并在内存限制允许的情况下对其进行迭代。任何打开的文件都有一个“读取指针”,用于跟踪读取的内容,随着每一行的消耗而前进。写入的循环将每个消耗整个文件。
随时随地看视频慕课网APP

相关分类

Python
我要回答