python是否会自动关闭自动打开文件

问题描述 投票:1回答:1

我正在使用python 3.7(在Windows 10上)我在终端上执行以下行。

open('textfile.txt')

在我尝试删除文件('textfile.txt')之后,os说它正在被某些程序使用。我关闭终端并打开一个新终端然后执行以下代码

open('textfile.txt').read()

我尝试删除文件('textfile.txt')然后它被删除。我的问题是我没有将文件对象分配给任何变量,但第一次文件没有自动关闭第二次它发生了。

为什么第二次python会自动关闭文件?

python file-handling
1个回答
2
投票

如果您打开文件,则必须关闭

f = open('textfile.txt')
f.close()

或使用pythonic方式:

with open("textfile.txt") as f:
    d = f.read()
    #On exit with code indent it will close

print("Here the file is closed automatically")
© www.soinside.com 2019 - 2024. All rights reserved.