我已经制作了一个包含5-6个.py文件的小PyQt应用程序。现在我想构建并编译它们到一个主文件中,这意味着它必须从一个主窗口exe操作。我的.py文件连接成功,我已经使用pyinstaller制作了可执行文件,但问题是我把每个.py文件都构建成了自己的.exe文件,但我想制作一个单独的.exe文件,通过它可以使用所有的.py文件。如何将所有.py文件构建为单个.exe文件?
bqucvtff1#
假设您有一个名为create.pylike的文件
def square (num) return num ** 2
同一目录中名为input.py的另一文件
from . import create def take_input(): x = input("Enter Input") return create.square(x)
最后是您的main.py
from . import input if __name__ == '__main__': ip = input.take_input()
你要打电话给指挥部-
pyinstaller --onefile main.py
pyinstaller将导入所有文件本身的所有依赖项
col17t5w2#
试试这个:
pyinstaller --onefile main_app.py
yhuiod9q3#
使用pyinstaller --onefile yourprogramname.py命令。Pyinstaller将自动导入和编译依赖文件。
pyinstaller --onefile yourprogramname.py
js4nwp544#
最后我得到了答案.检查下面的命令
pyinstaller C:/version_0_1_client_server/scripts/filename.py --paths C:/version_0_1_client_server/ --add-data 'data/config.yaml;data' --add-data 'data/image.png;data'
文件结构:
Folder : version_0_1_client_server sub folder : data scripts
具有PNG文件和额外文件的数据文件夹。我正在使用这个命令它将tackcare关于所有.py文件依赖
zpgglvta5#
我认为解决方案是编辑.spec文件并在spec文件上运行pyinstaller,而不是在单个.py文件上运行。您可以在此处找到有关将多个exes添加到单个.spec文件的信息:https://pyinstaller.readthedocs.io/en/v3.3.1/spec-files.html#multipackage-bundles
5条答案
按热度按时间bqucvtff1#
假设您有一个名为create.pylike的文件
同一目录中名为input.py的另一文件
最后是您的main.py
你要打电话给指挥部-
pyinstaller将导入所有文件本身的所有依赖项
col17t5w2#
试试这个:
yhuiod9q3#
使用
pyinstaller --onefile yourprogramname.py
命令。Pyinstaller将自动导入和编译依赖文件。js4nwp544#
最后我得到了答案.检查下面的命令
文件结构:
具有PNG文件和额外文件的数据文件夹。
我正在使用这个命令它将tackcare关于所有.py文件依赖
zpgglvta5#
我认为解决方案是编辑.spec文件并在spec文件上运行pyinstaller,而不是在单个.py文件上运行。
您可以在此处找到有关将多个exes添加到单个.spec文件的信息:https://pyinstaller.readthedocs.io/en/v3.3.1/spec-files.html#multipackage-bundles