2012-05-15 38 views
38

我正在寻找一种方法来将Python程序转换为.exe文件,而无需使用py2exe。 py2exe表示它需要过时的Python 2.6。有没有这种方式可以让我可以分发我的Python程序,而不需要最终用户安装Python?如何将Python程序转换为可运行的.exe Windows程序?

+3

[据此](http://www.py2exe.org/index.cgi/Tutorial#Step52)py2exe可以支持2.6,2.7,3.0,3.1,只要你可以提供MSVCR90.dll –

+2

我也可以,已经使用了2.7.2和2.7.3的py2exe。 – birryree

+3

我无法评论,但由于安全原因,我需要提醒其他人。 Virus Total标记PyInstaller有7种不同的病毒,并且校验和不匹配。 **请勿在2016年9月21日22:56 -5:00之前下载。**我不得不发布此内容,因为它在几个答案中都是推荐的,包括所选的答案。我只是在搜索时发现了这个问题和答案,并且在意识到我应该先扫描它之前几乎使用了PyInstaller。我很高兴我采取了这些预防措施。 –

回答

24

明白,每一个“冻结”的应用程序为Python不会真正保护您的代码以任何方式。每个独立可执行的Python'程序'打包系统将包含大量的Python库和解释器,这将使你的程序非常庞大。

这就是说,PyInstaller已经完成了我所投入的一切几乎完美的工作。目前它只支持Python 2.7,但Pyinstaller支持各种各样的大型和小型库,这在Python的其他“冻结”类型程序中是无与伦比的。

+0

这看起来好像会工作得很好。但是我对如何设置它稍有困惑。有没有可以给我的链接或一些简单的指示?谢谢你这@PenguinCoder和你回答我的问题的所有其他人 – bolharr2250

+0

@ bolharr2250 [StackOverflow](http://stackoverflow.com/questions/5543920/comprehensive-tutorial-on-pyinstaller)“Pyinstaller教程”的问题!开始使用[Pyinstaller手册](http://www.pyinstaller.org/export/d3398dd79b68901ae1edd761f3fe0f4ff19cfb1a/project/doc/Manual.html?format=raw#getting-started)是最好的开始。 – PenguinCoder

2

我在Python 3.2

8

使用cx-freeze了良好的效果有些人聊得很好约PyInstaller

http://www.pyinstaller.org/

+0

我也尝试将python(2.7.3)项目与许多第三部分库转换为py2exe的可执行文件,但它没有工作!比我尝试pyinstaller(这需要更多的努力安装),一切工作就像一个魅力! – user1911091

1

为此,你有两个选择:

  • 降级到Python 2.6。这通常是不可取的,因为它是回溯并可能使您的脚本的一小部分无效
  • 您的第二个选择是使用某种形式的exe转换器。我建议pyinstaller,因为它似乎有最好的结果。
0

如果它是一个简单的脚本PY指 here

否则为GUI:

$ PIP3安装cx_Freeze

1)创建一个setup.py文件和放在您要转换的.py文件所在的目录中。

2)将以下行复制粘贴到setup.py中,并将“filename.py”更改为您指定的文件名。

from cx_Freeze import setup, Executable 
setup(
    name="GUI PROGRAM", 
    version="0.1", 
    description="MyEXE", 
    executables=[Executable("filename.py", base="Win32GUI")], 
    ) 

3)运行setup.py “$蟒蛇setup.py打造”

4)新目录将在那里有所谓的 “建”。在它里面你会得到你的.exe文件准备直接启动。 (请确保您复制粘贴图像文件和其他外部文件到生成目录中)

相关问题