我的项目结构是这样的
ab_folder
---ab.py
---abc.py
ab_report
---ab_report.py
---utils.py
我的主文件是ab_folder中的ab.py
,该文件使用abc.py
文件,它还从 ab_report 文件夹中导入文件ab_report.py
。我正在ab.py
中使用以下代码来切换和导入 ab_report 文件夹
import sys
sys.path.insert(0, "../ab_report")
from ab_report import PDFRepoort
现在,我现在使用pyinstaller生成了ab.py
文件(这是我的主文件)的exe。
在阅读 pyinstaller 文档时,我了解到,如果我们的代码更改了--paths
,我们必须通过sys.path
自变量给出目录。
因此,我当前的目录为ab_folder
,在此目录中,我打开了控制台,并运行了以下行以生成ab.spec
文件
pyi-makespec --paths=C:\Users\abc\Desktop\Deploy_Exe_Test\ab_report ab.py
此后,我确实运行pyinstaller ab.py
命令以在dist文件夹中生成exe,但是当我运行该exe时出现错误提示
No module named ab_report
我认为我的问题可能在于提供路径参数。寻找有价值的建议和帮助。还有这个生成的exe文件将是安全的(很难反转)?
我的python版本是 3.6.6