【发布时间】:2020-11-03 04:59:31
【问题描述】:
我正在研究文件部分,我对下面的代码感到困惑。
def printAllLines(fileObject):
for line in fileObject:
print(line, end = "")
在这种情况下,一行的迭代是否等于原始文本文件的一行?
文本文件中有索引吗?
我可以将纯文本文件视为包含多个项目的列表吗?
而且每一项都包含一行文字?
【问题讨论】:
-
第一次看到它会让人困惑,但它非常有用。当您遍历它时,任何 Python 对象都可以显示特殊行为。对于列表和元组,我们一次显示一个项目。对于文件对象,决定遍历它一次显示一行。
-
文本文件也是所谓的“迭代器”,如果被问到,它可以逐行返回内容。 G。通过for循环。每个打开的文件都有一个文件指针来定义下一次读取或写入的位置。
-
糟糕。全面回答您的问题。没有索引。一行以换行符结束。 Python 几乎(有效地)读取字符,直到它看到换行符并调用它得到的“行”并返回它。