如何在python中关闭文件而不赋值给变量
在Python中,如果你用这种方式打开一个文件:
line = open("file.txt", "r").readlines()[7]
那么你需要在使用完这个文件后把它关闭。关闭文件是为了释放系统资源,避免内存浪费。
你可以使用下面的代码来关闭文件:
file = open("file.txt", "r")
line = file.readlines()[7]
file.close()
这样,你先打开文件,读取第八行(因为索引是从0开始的),然后再关闭文件。记得一定要关闭文件哦!
2 个回答
0
有几种方法可以做到这一点,比如你可以直接用 f = open(...)
来打开文件,然后用 del f
来删除它。
如果你的Python版本支持的话,你还可以使用 with
语句:
with open("file.txt", "r") as f:
line = f.readlines()[7]
这样做会自动关闭你的文件。
编辑:我不明白为什么我解释如何正确处理文件会被投反对票。也许 “不分配变量” 这种方式就是不太受欢迎吧。
4
最好使用上下文管理器。这样在代码块结束时,文件会自动关闭,不用担心垃圾回收的具体实现细节。
with open("file.txt", "r") as f:
line = f.readlines()[7]