如何修复对已关闭文件的 I/O 操作?
How to fix I/O operation on closed file?
我有以下代码:
with open("Berry2019_Table1.txt", "r") as datafile:
print (datafile.read().split()[11::4])
mass = datafile.read().split()[11::4]
它给我I/O操作错误。我正在尝试将值列表放入一个变量中,那么我应该如何解决这个问题呢?提前致谢。
缩进。
您的“mass = datafile.read...”应该在“with open(...”内,因为您正试图从 withas 语句中调用数据文件。
进行如下操作:
with open("Berry2019_Table1.txt", "r") as datafile:
print (datafile.read().split()[11::4])
mass = datafile.read().split()[11::4]
在 with
区块之外 datafile
将被关闭,因此您将无法访问它...
您正在尝试调用 loop
之外的文件,因为您正在使用 with
,您应该使用 loop
执行所有操作。所以,改为使用:
with open("Berry2019_Table1.txt", "r") as datafile:
print (datafile.read().split()[11::4])
mass = datafile.read().split()[11::4]
我有以下代码:
with open("Berry2019_Table1.txt", "r") as datafile:
print (datafile.read().split()[11::4])
mass = datafile.read().split()[11::4]
它给我I/O操作错误。我正在尝试将值列表放入一个变量中,那么我应该如何解决这个问题呢?提前致谢。
缩进。 您的“mass = datafile.read...”应该在“with open(...”内,因为您正试图从 withas 语句中调用数据文件。
进行如下操作:
with open("Berry2019_Table1.txt", "r") as datafile:
print (datafile.read().split()[11::4])
mass = datafile.read().split()[11::4]
在 with
区块之外 datafile
将被关闭,因此您将无法访问它...
您正在尝试调用 loop
之外的文件,因为您正在使用 with
,您应该使用 loop
执行所有操作。所以,改为使用:
with open("Berry2019_Table1.txt", "r") as datafile:
print (datafile.read().split()[11::4])
mass = datafile.read().split()[11::4]