当前位置:  开发笔记 > 编程语言 > 正文

如何将.py转换为.exe for Python?

如何解决《如何将.py转换为.exeforPython?》经验,为你挑选了4个好方法。

我正在尝试将一个相当简单的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版包您.pypackages列表(例如:packages = ["idna", "os","sys"])

any name, any number, any descriptionsetup.py文件不应保持不变,就应该相应地改变它(例如:name = "", version = "0.11", description = '')

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



1> Maria Iruday..:

在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版包您.pypackages列表(例如:packages = ["idna", "os","sys"])

any name, any number, any descriptionsetup.py文件不应保持不变,就应该相应地改变它(例如:name = "", version = "0.11", description = '')

import开始步骤8之前,必须先安装ed软件包.


有没有办法让它成为"独立"的可执行文件?如果我按照你在文章中的建议继续进行,我最终会得到文件夹exe.win.32-3.6.其中包含大量支持文件和目录(如'collections /','email'等).简单的打印('你好')太可怕了.我想制作一个单独的可执行文件,它将在另一台计算机上运行,​​而不需要其他文件.是否有构建选项?

2> Rodrigo Nasc..:

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


刚试过,确实如此.

3> Gab..:

在Github上有一个名为auto-py-to-exe的开源项目.实际上它也只是内部使用Pyinstaller,但由于它有一个控制Pyinstaller的简单GUI,它可能是一个舒适的选择.与其他解决方案相比,它还可以输出独立文件.他们还提供了一个显示如何设置的视频.

GUI:

自动Py到Exe

输出:

产量



4> 小智..:

我不能告诉你什么是最好的,但我过去成功使用的工具是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?


值得一提的是,cxFreeze不做单文件可执行文件.
推荐阅读
360691894_8a5c48
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有