有人可以帮助我,当我运行文件时出现此错误 ValueError:关闭文件的I / O操作。 我只是想尝试运行一个simle测试文件 一 二 三 四 五 六 七 八 九 10
def main():
# Declare variables
line = ''
counter = 0
# Prompt for file name
fileName = input('Enter the name of the file: ')
# Open the specified file for reading
infile = open(fileName, 'r')
# Priming read
line = infile.readline()
counter = 1
# Read in and display first five lines
while line != '' and counter <= 5:
# Strip '\n'
line = line.rstrip('\n')
print(line)
line = infile.readline()
# Update counter when line is read
counter +=1
# Close file
infile.close()
# Call the main function.
main()
答案 0 :(得分:3)
在Python中,缩进是语法的一部分 - 它表示代码块。
您的代码段清楚地显示infile.close()
操作内部循环,因此它在第一次迭代时执行。因此,第二次从文件读取失败,因为文件在前一次迭代中已经关闭。
只需要修改行infile.close()
即可修复。
或者,使用上下文管理器来允许Python管理资源清理。
with open(fileName, 'r') as infile:
pass # operate on file here
# file will be closed automatically when you leave code block above.