ValueError:即使在为open()提供第二个arg之后,仍对关闭的文件进行I / O操作

尼尔·苏特

我正在尝试运行以下代码:

import xlrd
import os.path
import xlsxwriter

with open("arrays.xlsx", "a") as my_file:
    workbook = xlsxwriter.Workbook(my_file)
    worksheet = workbook.add_worksheet()
    array = [1, 2, 3, 4, 5]
    row = 0
    for col, data in enumerate(array):
        worksheet.write_column(row, 0, array)

workbook.close()

但是当我运行它时,出现以下错误:

Traceback (most recent call last):
File "C:\Users\hp\Anaconda3\lib\zipfile.py", line 1649, in __del__
self.close()
File "C:\Users\hp\Anaconda3\lib\zipfile.py", line 1666, in close
self.fp.seek(self.start_dir)
ValueError: I/O operation on closed file.
e4c5

with您实际上不需要关闭文件。

with语句用于使用上下文管理器定义的方法来包装块的执行(请参阅“使用语句上下文管理器”一节)。这允许将常用try...except...finally用法模式封装起来,以方便重用。

隐藏在此处的隐式finally块将为您关闭文件。只需删除您的明确关闭,您就可以了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ValueError:对关闭的文件进行I / O操作

ValueError:对关闭的文件进行I / O操作(不应关闭文件)

ValueError:打开文件后对关闭的文件进行I / O操作

ValueError:对关闭的文件进行I / O操作(使用两个txt文件)

第二个操作系统从grub消失了

屏蔽二维数组并根据屏蔽索引对第二个数组进行操作

flask ValueError:对已关闭文件的I / O操作

凯拉斯。ValueError:在关闭的文件上的I / O操作

python:ValueError:对已关闭文件的I / O操作

openpyxl:ValueError:在关闭的文件上的I / O操作

python:获取ValueError:关闭文件上的I/O操作

ValueError:已关闭文件的 I/O 操作。-- For 循环

Python ValueError:对关闭的文件进行I / O操作,文件保存且无数据

为什么相同的打开和写入文件的方式第二次出现错误?ValueError:在关闭的文件上的I / O操作

Python ValueError:对关闭的文件进行I / O操作。示例教程不起作用

关闭文件错误的I / O操作

通过匹配第二个data.table中的列在data.table列中进行操作

使用input()对关闭的文件进行I / O操作

为什么第二个操作比第一个操作快?

我不明白第二个循环如何具有O(i ^ 2)?

I / O操作如何阻止?

I / O操作性能

Android:应用程序从一个活动跳到第二个活动,而没有对第一个活动进行任何操作

为什么此Boost转换操作会使第二个元素出错?

如何在Android Honeycomb中向操作栏添加第二个下拉列表?

无法在Android中使用“自定义意图操作”打开第二个应用

STL 算法在第二个容器上重复擦除操作?

获取启动分区以识别第二个操作系统

SignInManager<User> 给出“在此上下文中启动的第二个操作”