我正在使用PyInstaller创建一个单文件可执行文件。是否有可能为我的脚本执行导入使得i)导入的模块是从同一个目录中的exe(即它不是打包成EXE)和ii)在导入模块可以导入其它模块中引入
被 打包成可执行程序?
此处的背景是导入的模块包含用户应能够修改的配置。这可能包括创建自定义派生类以及使用打包模块中的枚举。
尽管搜索很困难,但我没有找到任何建议,因为有很多相似的主题使用基本相同的关键字。
下列步骤允许module_name
导入由PyInstaller创建的可执行文件之外的Python模块(在此命名),并允许该模块导入捆绑到可执行文件中的模块。
excludes=['module_name']
到PyInstaller规范中使用的Analysis对象。这样可以防止module_name.py
被捆绑到可执行文件中。sys.path.append(os.path.dirname(sys.executable))
在module_name
应用程序中导入的位置。这允许将其从可执行文件所在的目录中导入,该目录与应用程序要运行的目录不同(由于被解压缩到一个临时文件夹)。sys.modules
。作为最后一个例子,请考虑以下内容。
# bundled_module1.py
import external_module
# bundled_module2.py
# module content
# external_module.py
import bundled_module2
这将失败,external_module.py
因为找不到导入的模块。但是,以下方法将起作用:
# bundled_module1.py
import bundled_module2
import external_module
# bundled_module2.py
# module content
# external_module.py
import bundled_module2
如果外部模块应该能够导入的捆绑模块数量有限,那就很好了。对于较大的集合,它可能会变得笨拙。
鉴于文档指出解释器 将 针对捆绑到可执行文件中的模块 来 解析导入,这感觉像是一个可能的错误。不过,并未明确调用与可执行文件外部的模块进行互操作。
问题内容: 情况 我在Windows上使用Pyinstaller制作项目的.exe文件。 我想使用option来获得干净的结果和易于分发的文件/程序。 我的程序使用一个文件来存储配置选项。该文件可以由用户定制。 问题 使用选项Pyinstaller将所有声明的“数据文件”放入单个文件文件中。 我已经看到了这个请求,但它给istructions添加一个包文件 的onefile内部 ,而不是外部的,在
问题内容: 现在,我正在使用Pyinstaller。我有一个脚本,可以从img文件夹中获取图像。 我生成.exe的脚本是 问题是仅生成.exe文件,但整个文件夹/ img被忽略。 问题:为了自动获取.exe文件+ / img文件夹,我需要在上一行中添加哪种附加语法? 更新12/18/2013 我的意思是:执行pyinstaller.py脚本并包含所有参数后,我必须在/ dist文件夹中看到:.ex
我试着做一个*。使用pyqtgraph的python应用程序中的exe文件和使用pyinstaller的pyqt库。Pyinstaller生成单个*。exe文件没有错误,但当我尝试启动它时,我得到一个未找到pyqtgraph的错误。 如何构建单个*。使用pyinstaller的exe文件?
问题内容: 我编写了一个Java代码,该文件导入了一个外部jar文件。如何在命令行上编译和运行它? 提前致谢! 问题答案: 从命令行编译: 运行: 对于Windows,请用作路径分隔符(而不是)。
问题内容: 我正在使用 ,创建使用HTML,CSS,JavaScript的PyQt5应用程序。 当我们以一般方式运行时,它工作正常,即 如下导入HTML, 如下导入CSS,JavaScript文件, 现在,我尝试使用创建一个独立文件。 pyinstaller命令: 我需要在生成的文件中手动添加静态文件才能按预期工作。我想将其包含在文件本身中。如何得到这个? 问题答案: 根据您的问题,您可以假定您的