首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python错误:OSError:[Errno 9]糟糕的文件描述符

Python错误:OSError:[Errno 9]糟糕的文件描述符
EN

Stack Overflow用户
提问于 2022-10-17 11:25:31
回答 1查看 87关注 0票数 0

我一直想使用DOCX库来转换docx文件。每次我运行它,我都会得到这个错误。

代码语言:javascript
复制
OSError: [Errno 9] Bad file descriptor

守则是:

代码语言:javascript
复制
from docx import Document


def bionify(path_to_text: str) -> None:
    doc = Document(path_to_text)
    new_doc = Document()
    all_paragraphs = doc.paragraphs
    for paragraph in all_paragraphs:
        word_list = paragraph.text.split(' ')
        new_paragraph = new_doc.add_paragraph()
        for word in word_list:
            i = 0
            while i < len(word):
                if i == 0 or i == 1:
                    new_paragraph.add_run(word[i]).bold = True
                else:
                    new_paragraph.add_run(word[i]).bold = False
                i += 1
            new_paragraph.add_run(' ')
    # Input the path to the document that you wish to save to:
    new_doc.save('sample_output.docx')


if __name__ == '__main__':
    # Input the path to the document containing your text file you wish to read from:
    bionify(r'C:\Users\###\Desktop\bionic python reader transformer\BionicTexterizer\sample_input.docx')

我已经更改了目的地、python包、python版本来运行它。但是每次我得到OSError:Errno 9坏文件描述符

完全跟踪:

代码语言:javascript
复制
Traceback (most recent call last):
  File "c:\Users\####\Desktop\bionic python reader transformer\BionicTexterizer\main.py", line 62, in <module>
    bionify(r'C:\Users\####\Desktop\bionic python reader transformer\BionicTexterizer\sample_input.docx')
  File "c:\Users\####\Desktop\bionic python reader transformer\BionicTexterizer\main.py", line 57, in bionify
    new_doc.save('sample_output.docx')
  File "C:\Python310\lib\site-packages\docx\document.py", line 135, in save
    self._part.save(path_or_stream)
  File "C:\Python310\lib\site-packages\docx\parts\document.py", line 111, in save
    self.package.save(path_or_stream)
  File "C:\Python310\lib\site-packages\docx\opc\package.py", line 172, in save
    PackageWriter.write(pkg_file, self.rels, self.parts)
  File "C:\Python310\lib\site-packages\docx\opc\pkgwriter.py", line 33, in write
    PackageWriter._write_content_types_stream(phys_writer, parts)
  File "C:\Python310\lib\site-packages\docx\opc\pkgwriter.py", line 45, in _write_content_types_stream
    phys_writer.write(CONTENT_TYPES_URI, cti.blob)
  File "C:\Python310\lib\site-packages\docx\opc\phys_pkg.py", line 155, in write
    self._zipf.writestr(pack_uri.membername, blob)
  File "C:\Python310\lib\zipfile.py", line 1810, in writestr
    with self.open(zinfo, mode='w') as dest:
  File "C:\Python310\lib\zipfile.py", line 1176, in close
    self._fileobj.seek(self._zinfo.header_offset)
OSError: [Errno 9] Bad file descriptor
Exception ignored in: <function ZipFile.__del__ at 0x0000022D9BF4BEB0>
Traceback (most recent call last):
  File "C:\Python310\lib\zipfile.py", line 1815, in __del__
    self.close()
  File "C:\Python310\lib\zipfile.py", line 1837, in close
    self._fpclose(fp)
  File "C:\Python310\lib\zipfile.py", line 1937, in _fpclose
    fp.close()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-17 19:24:20

Windows 11。这是windows 11的一个问题。我在windows 10上运行了代码,没有任何问题。似乎存在一些包权限问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74096543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档