我尝试使用xls2xlsx
模块将多个.xls文件转换为.xlsx,但收到以下错误消息:
模块未找到错误:没有名为'currency-symbols'的模块
代码:
import os
from xls2xlsx import XLS2XLSX
path = r'./ammcfiles'
p = os.listdir(path)
for f in p:
if f.endswith('.xlsx'):
x2x = XLS2XLSX(f)
x2x.to_xlsx(f)
我尝试pip安装模块,但它没有解决问题。
我的Python版本是3.10.4。
2条答案
按热度按时间kzmpq1sx1#
注意:更多的堆栈跟踪有助于查看完整的问题。
使用Python 3.6开发并运行的脚本也有类似的问题。
在Python 3.10中运行脚本返回以下错误:
回溯(最近的呼叫排在最后):
文件“/lib/python3.10/site-packages/xls 2xlsx/htmlxls2xlsx.py”,第37行,位于
将货币符号.常量作为货币符号常量导入
模块未找到错误:没有名为'currency_symbols.constants'的模块
在处理上述异常的过程中,发生了另一个异常:
回溯(最近的呼叫排在最后):
文件“/script/./script.py“,第20行,在从xls 2xlsx导入XLS 2XLSX中
文件“/lib/python3.10/site-packages/xls 2xlsx/init.py”的第3行,位于
从.htmlxls2xlsx导入HTMLXLS 2XLSX
文件“/lib/python3.10/site-packages/xls 2xlsx/htmlxls2xlsx.py”,第40行,位于
文件“/usr/lib/python3.10/importlib/init.py”,第126行,在导入模块中返回 Bootstrap 。_gcd_import(名称[级别:],包,级别)
模块未找到错误:没有名为'currency-symbols'的模块
调查
确保已安装软件包
<virtual env>/lib/python3.10/site-packages/xls2xlsx/htmlxls2xlsx.py
的第36-40行这段代码似乎负责加载
currency-symbols
模块,而不管Python版本如何,也不管模块版本如何。因此,由于两次导入尝试都失败,所以收到了原始错误。
<virtual env>/lib/python3.10/site-packages/currency_symbols/
包含文件_constants.py
而不是constants.py
。请注意,文件夹是
currency_symbols
而不是currency-symbols
,下划线(_
)与破折号(-
)。因此,htmlxls2xlsx.py
使用新的currency-symbols
模块名称currency_symbols
,而不是constants
子模块_constants
的新名称修复
编辑
htmlxls2xlsx.py
以使用_constants.py
try:导入货币符号.常量作为货币符号常量这将修复导入和使用问题。
6rqinv9w2#
正如Yuli L提到的,在www.example.com里面htmlxls2xlsx.py,这是在xls2xlsx模块目录下我发现:
更改人(注意拼写错误):