gpt4 book ai didi

python - python如何从文件中读取行

转载 作者:太空宇宙 更新时间:2023-11-04 07:42:03 25 4
gpt4 key购买 nike

考虑以下简单的 python 代码:

f=open('raw1', 'r')
i=1
for line in f:
line1=line.split()
for word in line1:
print word,
print '\n'

在第一个 for 循环中,即“for line in f:”,python 如何知道我想要读取一行而不是一个单词或字符?

第二个循环更清晰,因为第 1 行是一个列表。所以第二个循环将遍历列表元素。

最佳答案

Python 有一种称为“iterables”的符号。它们知道如何让你遍历它们持有的一些数据。一些常见的迭代器是列表、集合、字典,几乎所有数据结构。文件也不异常(exception)。

事物变得可迭代的方式是通过定义一个方法来返回一个带有 next 方法的对象。这个next方法的意思是重复调用,每次返回下一条数据。 for foo in bar 循环实际上只是在幕后重复调用 next 方法。

对于文件,next 方法返回行,仅此而已。它“不知道”您想要线路,它总是会返回线路。这样做的原因是~50%的涉及文件遍历的情况都是按行的,如果要的话,

 for word in (word for line in f for word in line.split(' ')):
...

工作得很好。

关于python - python如何从文件中读取行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18014633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com