Psi*_*man 5 python pyinstaller configparser python-3.x
我在 python 应用程序中使用 configparser
当我运行应用程序时
python main.py
Run Code Online (Sandbox Code Playgroud)
有用。但是,如果我使用 pyinstall 创建 Windows exe,该 exe 将失败并显示消息
no module named 'configparser'
Run Code Online (Sandbox Code Playgroud)
然而,如屏幕截图所示,configparser 确实存在
这里发生了什么?
注意:如果从目录中删除 __init__.py,我不会收到错误
[更多信息]
这似乎是“sys.path”问题。如果我将 configparser.py 复制到我的应用程序目录中,问题就会转移到我正在调用的另一个模块上
我应该更改我的 pyinstaller 规范文件吗?
# -*- mode: python -*-
a = Analysis(['main.py'],
hiddenimports=[],
hookspath=None,
runtime_hooks=None)
a.datas = list({tuple(map(str.upper, t)) for t in a.datas})
pyz = PYZ(a.pure)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
name='test_imports.exe',
debug=False,
strip=None,
upx=True,
console=True)
Run Code Online (Sandbox Code Playgroud)