如何将Python程序转换为可执行文件

如何将Python程序转换为可执行文件,python,Python,我为这样一个基本的问题道歉。我已经在网上做了一些研究,但我仍然不知道如何将python文件夹转化为可以在OS X中打开的实际应用程序。我正在使用Mac OS X、Terminal和Coderunner进行python项目。以下是一些选项: 不是特定于Python的。它可以让您围绕命令行工具包装一个简单的GUI 是特定于Python的,如果您有GUI,或者需要在后台运行,那么它是一个不错的选择 与py2app类似,但跨平台;我从来没用过,所以我不知道它有多好用 正确的选择取决于你的程序做什么;

我为这样一个基本的问题道歉。我已经在网上做了一些研究,但我仍然不知道如何将python文件夹转化为可以在OS X中打开的实际应用程序。我正在使用Mac OS X、Terminal和Coderunner进行python项目。

以下是一些选项:

  • 不是特定于Python的。它可以让您围绕命令行工具包装一个简单的GUI
  • 是特定于Python的,如果您有GUI,或者需要在后台运行,那么它是一个不错的选择
  • 与py2app类似,但跨平台;我从来没用过,所以我不知道它有多好用

正确的选择取决于你的程序做什么;谁是预期的观众?你是否需要重新发布,如果需要,如何发布,等等。如果您想让应用程序完全独立—不依赖操作系统之外的任何其他东西—那么事情就会变得更复杂(尽管肯定不是无法解决的;有几种商用Mac桌面应用程序是用Python编写的。)

以下是一些选项:

  • 不是特定于Python的。它可以让您围绕命令行工具包装一个简单的GUI
  • 是特定于Python的,如果您有GUI,或者需要在后台运行,那么它是一个不错的选择
  • 与py2app类似,但跨平台;我从来没用过,所以我不知道它有多好用

正确的选择取决于你的程序做什么;谁是预期的观众?你是否需要重新发布,如果需要,如何发布,等等。如果您想让应用程序完全独立—不依赖操作系统之外的任何东西—那么事情就会变得更复杂(虽然肯定不是无法解决的;有几种商用Mac桌面应用程序是用Python编写的。)

通常,您可以通过将

#!/usr/bin/env python
作为第一行,然后在终端窗口中键入

chmod u+x myscript.py
您可能还想将其放入一个特殊的
脚本
文件夹中,然后通过编辑
.bash\u配置文件
将其添加到您的
路径
。(我在这里放了很多流行语,以帮助您找到解释这些东西如何工作的教程。)

如果你想用这种方式运行它,你可以这样做,但从长远来看,你最好在终端窗口中舒适地工作


它还可以帮助您了解应用程序的功能:处理文件、生成GUI、进行计算等等。

通常,您可以通过

#!/usr/bin/env python
作为第一行,然后在终端窗口中键入

chmod u+x myscript.py
您可能还想将其放入一个特殊的
脚本
文件夹中,然后通过编辑
.bash\u配置文件
将其添加到您的
路径
。(我在这里放了很多流行语,以帮助您找到解释这些东西如何工作的教程。)

如果你想用这种方式运行它,你可以这样做,但从长远来看,你最好在终端窗口中舒适地工作



了解你的应用程序的功能也会有所帮助:处理文件、生成GUI、进行计算等等。

你能更具体地解释一下“实际应用程序”是什么意思吗?答案将取决于此。你说的python文件夹进入应用程序是什么意思?你能更具体地解释一下“实际应用程序”是什么意思吗?答案将取决于此。什么意思,python文件夹进入应用程序?我想将cx_Freeze添加到跨平台列表中:看看是否有人可以比较cx_Freeze、PyInstaller和py2app,这将非常有趣。cx_Freeze在其主页上甚至没有提到Mac,这可能是其缺乏可见性的原因!它确实提到了这一点:“cx_Freeze是跨平台的,应该可以在Python本身工作的任何平台上工作。”至于比较,这里有一点:。我在尝试转到该URL时出错。(我指的是那个页面上明确提到的Mac。)我想将cx_Freeze添加到跨平台列表中:看看是否有人可以比较cx_Freeze、PyInstaller和py2app,这真的很有趣。cx_Freeze在其主页上甚至没有提到Mac,这可能是其缺乏可见性的原因!它确实提到了这一点:“cx_Freeze是跨平台的,应该可以在Python本身工作的任何平台上工作。”至于比较,这里有一点:。我在尝试转到该URL时出错。(我指的是在那一页上明确提到的Mac。)我想我的意思是,如果我制作了一个带有GUI的python程序,那么我该如何将其转换为自己的应用程序,其他Mac用户可以将其安装到自己的应用程序文件夹中并运行。我不确定beroe是否刚刚回答了我的问题。如果你想制作GUI,您可能想学习一些列出的工具或@Nicolas_Riley的答案中列出的工具。我的建议将涵盖相当比例的数据处理类型任务(包括用户交互),但仅限于在命令行中使用。我想我不会放弃基于终端的脚本,除非你必须这样做。我想我的意思是,如果我用GUI制作一个python程序,我该如何将它转换为自己的应用程序,让其他mac用户可以安装到他们的应用程序文件夹中并运行。我不确定beroe是否回答了我的问题。如果你想制作GUI,您可能想学习一些列出的工具或@Nicolas_Riley的答案中列出的工具。我的建议将涵盖相当比例的数据处理类型任务(包括用户交互),但仅限于在命令行中使用。我想我不会放弃基于终端的脚本,除非你必须这样做。