将简单的Python脚本转换为Windows可执行文件的过程

时间:2010-01-26 00:39:11

标签: python packaging compilation py2exe software-distribution

我编写了一个脚本,可以帮助Windows用户进行日常生活。我想简单地向她发送.exe而不是让她安装python,dll或者必须处理任何其他文件。

我已经阅读了很多关于将Python脚本编译成可执行文件的stackoverflow条目。我有点困惑,因为有很多选择,但有些似乎过时了(自2008年以来没有更新),没有一个对我来说不够简单,因为我花了几个小时就没有问过这个问题。

我希望有更好,最新的方式来做到这一点。

我调查了:

但要么我无法让他们工作,要么无法理解如何获得我需要的结果。我得到的最接近的是py2exe,但它仍然给了我MSVCR71.dll

我希望得到一步一步的答案,因为我也无法遵循这里的一些调整答案,这些答案需要事先了解如何使用py2exe或其他一些工具。

我正在使用Python 2.5,其中一个模块仅适用于该版本。

8 个答案:

答案 0 :(得分:31)

如果你使用--onefile选项,PyInstaller将创建一个单文件可执行文件(虽然它实际上是提取然后自己运行)。

有一个简单的PyInstaller教程here。如果您对使用它有任何疑问,请发布它们......

答案 1 :(得分:13)

使用py2exe,将其包含在setup.py中:

from distutils.core import setup
import py2exe, sys, os

sys.argv.append('py2exe')

setup(
    options = {'py2exe': {'bundle_files': 1}},
    windows = [{'script': "YourScript.py"}],
    zipfile = None,
)

然后你可以通过命令提示符/空闲来运行它,两者都适合我。希望它有所帮助

答案 2 :(得分:12)

我建议去http://sourceforge.net/projects/py2exe/files/latest/download?source=files下载py2exe。然后创建一个名为setup.py的python文件。 在其中,输入

from distutils.core import setup
import py2exe
setup(console=['nameoffile.py'])

保存在您的用户文件夹中 同时保存要在同一文件夹中转换的文件

运行窗口的命令提示符 输入setup.py install py2exe

应打印多行代码......

接下来,打开dist文件夹。

运行exe文件。

如果程序有必要的文件可以使用,请将它们移动到文件夹

将dist文件夹复制/发送给人。

可选:更改dist文件夹的名称

希望它有效!:)

答案 3 :(得分:8)

我会加入@Nicholas推荐PyInstaller(带--onefile标志),但会被警告使用“最新”发布“,PyInstaller 1.3 - 它旧。使用“预发布”1.4,下载here - 或者更好地使用svn repo中的代码 - 安装SVN并运行svn co http://svn.pyinstaller.org/trunk pyinstaller

正如@Nicholas所暗示的那样,动态库不能从与可执行文件的其余部分相同的文件运行 - 但幸运的是,它们可以与所有其他文件一起打包在“自解压”可执行文件中,根据需要将其自身解压缩到某个临时目录中; PyInstaller在这方面做得很好(在许多其他方面 - py2exe更受欢迎,但我认为pyinstaller在所有其他方面都是优选的。)

答案 4 :(得分:6)

1)根据您的Python版本,从here获取py2exe。

2)创建一个名为" setup.py"的文件。在与要转换的脚本相同的文件夹中,具有以下代码:

from distutils.core import setup
import py2exe
setup(console=['myscript.py']) #change 'myscript' to your script

3)转到命令提示符,导航到该文件夹​​,然后键入:

python setup.py py2exe

4)它会产生一个" dist"与脚本位于同一文件夹中的文件夹。此文件夹包含.exe文件。

答案 5 :(得分:2)

您可能想知道您的应用是否可以在IronPython下运行。如果是这样,您可以将其编译为exe http://www.codeplex.com/IronPython

答案 6 :(得分:0)

您可以使用NSIS(可安装脚本的nullsoft安装系统)从python脚本创建可执行文件。请按照以下步骤将python文件转换为可执行文件。

  • 下载NSIS并安装到系统中。
  • .zip文件中压缩要导出为可执行文件的文件夹。
  • 开始NSIS并选择Installer based on ZIP file。查找并提供压缩文件的路径。

  • 提供您的Installer NameDefault Folder路径,然后单击 Generate 生成您的exe文件。

  • 完成后,您可以单击 Test 来测试可执行文件,或者单击 Close 来完成该过程。

  • 生成的可执行文件可以安装到系统中,并且可以分发以使用此应用程序,而不必担心安装所需的python及其软件包。

有关视频教程,请遵循:How to Convert any Python File to .EXE

答案 7 :(得分:-1)

您可以通过以下方式为EXE文件创建安装程序:
1.按WinKey + R
2.在运行窗口中键入“iexpress”(不带引号) 3.完成创建安装程序的向导 4.分发已完成的EXE。