使用openpyxl写入现有Excel文件时触发numpy属性错误求助
问题解决方法
根源分析
你遇到的是openpyxl旧版本与高版本numpy的兼容性问题:numpy 1.20+彻底移除了numpy.float这个弃用别名,但你当前使用的openpyxl版本的兼容模块仍在调用该属性,触发了AttributeError。
解决步骤(二选一即可)
方法1:升级openpyxl(推荐)
直接更新到适配高版本numpy的openpyxl版本,在PyCharm的终端(确保激活了项目虚拟环境)执行:
pip install --upgrade openpyxl
方法2:降级numpy到兼容版本
如果无法升级openpyxl,就把numpy降到1.19.x系列的稳定版本,执行:
pip install numpy==1.19.5
代码小优化
另外,你代码里的wb.get_active_sheet()在新版openpyxl中已被弃用,建议替换为wb.active,避免后续版本的警告或错误:
from openpyxl import load_workbook wb = load_workbook(filename=output_filename) ws = wb.active # 替换原wb.get_active_sheet() ws.cell(row=1, column=1).value = "write_lol" wb.save(output_filename)
内容的提问来源于stack exchange,提问作者mahle-majstr
相关产品推荐
相关产品推荐

