我正在尝试将一个相当简单的Python程序转换为可执行文件,但找不到我想要的内容,所以我有几个问题(我正在运行Python3.6):
到目前为止我发现的这种方法如下
下载旧版本的Python并使用 pyinstaller/py2exe
在3.6中设置一个允许我做1的虚拟环境.
下载Python到C++转换器并使用它.
这是我尝试过的/我遇到的问题.
我pyinstaller
在它之前安装了所需的下载(pypi-something),所以它没有用.下载必备文件后,pyinstaller
仍然无法识别它.
如果我在2.7中设置virtualenv,我真的需要安装2.7吗?
同样,我看到的唯一一个到C++转换器的python只能运行到python 3.5 - 如果尝试这个,我是否需要下载并使用这个版本?
Maria Iruday.. 100
在Python 3.6中将.py转换为.exe的步骤
安装Python 3.6.
安装cx_Freeze,(打开命令提示符并键入pip install cx_Freeze
.
安装idna,(打开命令提示符并键入pip install idna
.
写一个.py
名为的程序myfirstprog.py
.
创建一个setup.py
在脚本的当前目录中命名的新python文件.
在setup.py
下面的代码中保存.
按下shift键右键单击同一目录,这样就可以打开命令提示符窗口.
在提示符下键入 python setup.py build
如果您的脚本没有错误,那么创建应用程序就没有问题.
检查新创建的文件夹build
.它有另一个文件夹.在该文件夹中,您可以找到您的应用程序 运行.让自己开心
请参阅我博客中的原始脚本.
setup.py:
from cx_Freeze import setup, Executable
base = None
executables = [Executable("myfirstprog.py", base=base)]
packages = ["idna"]
options = {
'build_exe': {
'packages':packages,
},
}
setup(
name = "",
options = options,
version = "",
description = '',
executables = executables
)
编辑:
请确保不要myfirstprog.py
将您的.py
扩展名文件名放在步骤4中创建;
你应该包括每import
版包您.py
到packages
列表(例如:packages = ["idna", "os","sys"]
)
any name, any number, any description
在setup.py
文件不应保持不变,就应该相应地改变它(例如:name = "
)
在import
开始步骤8之前,必须先安装ed软件包.
有没有办法让它成为"独立"的可执行文件?如果我按照你在文章中的建议继续进行,我最终会得到文件夹exe.win.32-3.6.其中包含大量支持文件和目录(如'collections /','email'等).简单的打印('你好')太可怕了.我想制作一个单独的可执行文件,它将在另一台计算机上运行,而不需要其他文件.是否有构建选项? (7认同)
Rodrigo Nasc.. 54
Pyinstaller仍然不支持Python 3.6.所以为了使用它你需要Python 3.5或者下面的版本.我不确定py2exe.
无论如何,案例1应该这样做:
在Python文件夹中打开cmd窗口(打开命令窗口并使用cd
或按住shift,在Windows资源管理器上右键单击它,然后选择"在此处打开命令窗口").然后进入
pip install pyinstaller
就是这样.
使用它的最简单方法是在命令提示符下输入
pyinstaller file_name.py
有关如何使用它的更多详细信息,请查看此问题.
更新
Pyinstaller现在支持Python 3.6
在Python 3.6中将.py转换为.exe的步骤
安装Python 3.6.
安装cx_Freeze,(打开命令提示符并键入pip install cx_Freeze
.
安装idna,(打开命令提示符并键入pip install idna
.
写一个.py
名为的程序myfirstprog.py
.
创建一个setup.py
在脚本的当前目录中命名的新python文件.
在setup.py
下面的代码中保存.
按下shift键右键单击同一目录,这样就可以打开命令提示符窗口.
在提示符下键入 python setup.py build
如果您的脚本没有错误,那么创建应用程序就没有问题.
检查新创建的文件夹build
.它有另一个文件夹.在该文件夹中,您可以找到您的应用程序 运行.让自己开心
请参阅我博客中的原始脚本.
setup.py:
from cx_Freeze import setup, Executable
base = None
executables = [Executable("myfirstprog.py", base=base)]
packages = ["idna"]
options = {
'build_exe': {
'packages':packages,
},
}
setup(
name = "",
options = options,
version = "",
description = '',
executables = executables
)
编辑:
请确保不要myfirstprog.py
将您的.py
扩展名文件名放在步骤4中创建;
你应该包括每import
版包您.py
到packages
列表(例如:packages = ["idna", "os","sys"]
)
any name, any number, any description
在setup.py
文件不应保持不变,就应该相应地改变它(例如:name = "
)
在import
开始步骤8之前,必须先安装ed软件包.
Pyinstaller仍然不支持Python 3.6.所以为了使用它你需要Python 3.5或者下面的版本.我不确定py2exe.
无论如何,案例1应该这样做:
在Python文件夹中打开cmd窗口(打开命令窗口并使用cd
或按住shift,在Windows资源管理器上右键单击它,然后选择"在此处打开命令窗口").然后进入
pip install pyinstaller
就是这样.
使用它的最简单方法是在命令提示符下输入
pyinstaller file_name.py
有关如何使用它的更多详细信息,请查看此问题.
更新
Pyinstaller现在支持Python 3.6
在Github上有一个名为auto-py-to-exe的开源项目.实际上它也只是内部使用Pyinstaller,但由于它有一个控制Pyinstaller的简单GUI,它可能是一个舒适的选择.与其他解决方案相比,它还可以输出独立文件.他们还提供了一个显示如何设置的视频.
GUI:
输出:
我不能告诉你什么是最好的,但我过去成功使用的工具是cx_freeze.他们最近更新(17年1月7日)到5.0.1版,它支持Python 3.6.
这是pypi https://pypi.python.org/pypi/cx_Freeze
文档显示,根据您的需求,有多种方法可以执行此操作.
http://cx-freeze.readthedocs.io/en/latest/overview.html
我还没有尝试过,所以我将指出一个帖子,其中讨论了简单的方法.有些事情可能会或可能没有改变.
我如何使用cx_freeze?