打开pyxl.utils.exceptions.IllegalcharacterError

新手上路,请多包涵

我有以下 python 代码将处理后的单词写入 excel 文件。字数约7729

 From openpyxl import *
book=Workbook ()
sheet=book.active
sheet.title="test"
for x in range (7729):
    sheet.cell (row=1,column=x+1).value=x
book.save ('test.xlsx')

这是我使用的代码的样子,但是当我运行它时,它给了我一个错误,说

openpyxl.utils.exceptions.IllegalCharacterError

这是我第一次使用这个模块,我将不胜感激任何帮助。

原文由 EHM 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

试试这个: 这段代码对我有用。

 from openpyxl import *
book=Workbook ()
sheet=book.active
sheet.title="test"
x = 0
with open("temp.txt") as myfile :
    text = myfile.readline()
    while text !="":
            sheet.cell (row=1,column=x+1).value=str(text).encode("ascii",errors="ignore")
            x+=1
            text = myfile.readline()

book.save ('test.xlsx')

原文由 toheedNiaz 发布,翻译遵循 CC BY-SA 3.0 许可协议

openpyxl 自带非法字符正则表达式,供你使用。假设您很乐意简单地删除这些字符,您可以这样做:

 import re
from openpyxl.cell.cell import ILLEGAL_CHARACTERS_RE
from openpyxl import *

book=Workbook ()
sheet=book.active
sheet.title="test"
for x in range (7729):
   sheet.cell (row=1,column=x+1).value = ILLEGAL_CHARACTERS_RE.sub(r'',x)
book.save ('test.xlsx')

为了加快速度,您可以将原始单元格值分配放在 try/except 中,并且仅在捕获 openpyxl.utils.exceptions.IllegalCharacterError 时运行重新替换。

资料来源: https ://www.programmersought.com/article/43315246046/

原文由 otocan 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏