gpt4 book ai didi

python - fp.readlines() 是否关闭文件?

转载 作者:太空宇宙 更新时间:2023-11-03 12:21:32 24 4
gpt4 key购买 nike

在 python 中,当我稍后在程序中尝试访问 fp 时,我看到了 fp.readlines() 正在关闭文件的证据。您能否确认此行为,如果我还想再次读取文件,是否需要稍后重新打开该文件?

Is the file closed?是相似的,但没有回答我所有的问题。

import sys 

def lines(fp):
print str(len(fp.readlines()))

def main():
sent_file = open(sys.argv[1], "r")

lines(sent_file)

for line in sent_file:
print line

返回:

20

最佳答案

一旦您读取了一个文件,文件指针就会移动到末尾,并且不会再“找到”超出该点的行。

重新打开文件或回到开头:

sent_file.seek(0)

您的文件关闭;当您尝试访问已关闭的文件时会引发异常:

>>> fileobj = open('names.txt')
>>> fileobj.close()
>>> fileobj.read()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: I/O operation on closed file

关于python - fp.readlines() 是否关闭文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16508271/

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