我对编程完全是新手。最近我用Python和pygame制作了一个简单的贪吃蛇游戏。当然,我可以通过运行.py脚本轻松地玩我的游戏,但为了与不太懂计算机的朋友分享它,我尝试着弄清楚如何将我的代码编译成单个的.exe文件以便于他们使用。
我已经尝试过py2exe和cx_Freeze,两者都给出了一个包含.exe文件和多个其他文件(依赖项)的dist或build目录。这确实有效,因为我能够将整个文件夹压缩并通过.zip方式分发,但这并不是理想的。我希望能够将所有内容打包成一个文件。
因此,我开始搜索“如何将Python编译成一个单独的exe”。然而,与我之前尝试搜索的许多编程问题不同的是,我无法得到一个直接、可靠的答案。到目前为止,我尝试的最新可靠答案给出了以下setup.py脚本:
from distutils.core import setup
import py2exe, sys, os
sys.argv.append('py2exe')
setup(
options = {'py2exe': {'bundle_files': 1, 'compressed': True}},
windows = ['snek.py'],
zipfile = None
)
# Python 3.4.4, py2exe 0.9.2.2; modules used: pygame, random
尽管如此,它给了我一个整个文件夹而不是单个的.exe文件,这样程序就无法运行。
所以,我来找您——万事通、伟大的stackoverflow,有两个问题。
以防我漏掉了什么:你有什么建议可以实现我的单个.exe文件梦想吗?
另外:为什么这么难?
py2exe
(以及类似的工具)会创建一个带有扩展名为.exe的自解压缩.zip文件,而不是真正的.exe文件(就像C/C++编译器所做的那样)。 - furas