以下是代码:
fin=open("myFile.txt","r") # opening a file creates a file handle
for line in fin:
print(line)
fin.close() # close file handle
我的问题是:如何理解TextIOWrapper对象fin?我的意思是,可以肯定地说它是具有序列结构的东西,其中序列的每个项目都是文件的一行,其中包含" \ n"添加?我还能说些什么呢?你怎么理解它?
非常感谢任何评论。
答案 0 :(得分:2)
表达式for line in file
通过新行分隔符将文件拆分(更准确地流),直到达到EOF。可以把它想象成一条直到它是一条新行的流,然后返回它刚读过的字符。
答案 1 :(得分:1)
类似文件的对象iterators在每次迭代时产生一行文本。一般的迭代器只意味着你可以完全循环一次&#34 ;;文件与此模式的不同之处在于它们可以(取决于代表的内容)为seek
ed,这会将迭代器重置为文件中的新位置。
要清楚,它们不是序列;术语"序列"具有特定含义,包括对其进行索引,连续多次或并行迭代的能力,所有这些都无需手动修复状态。