如何使python脚本在osx上可执行?


问题内容

我只想将我的脚本作为应用程序。双击运行,而不是在终端中运行。我以前用automator做到了,但是现在,在capitan上它不起作用。它只给出错误而没有解释。

当我尝试使用automator时,出现此错误:

"The action “Run Shell Script” encountered an error."

我也尝试了以下技巧,但仍然无法做到这一点。

#!/usr/bin/env python

chmod +x script.py

解决了:

经过这两个步骤。我将“打开方式”更改为仅此文件的终端,并更改了#!/usr/bin/env python,它可以工作。但是,如果没有以下两个步骤,它将无法正常工作,您需要执行所有步骤。

#!/usr/local/bin/python在代码的开头添加。然后chmod +x myscript.py在终端中运行
。之后,更改应用程序以打开终端。

它为我工作。


问题答案:

假设安装了Python,这应该可以工作:

https://docs.python.org/2/using/mac.html

选择PythonLauncher作为默认应用程序,以通过finder信息窗口打开脚本(或任何.py脚本),然后双击它。PythonLauncher具有各种首选项来控制脚本的启动方式。拖动选项可让您一次调用更改它们,或使用其“首选项”菜单全局更改。

附录:

http://docs.python-
guide.org/en/latest/starting/install/osx/

Mac OS X的最新版本El Capitan随附了Python 2.7。

您无需安装或配置其他任何东西即可使用Python。话虽如此,我强烈建议您在开始构建供实际使用的Python应用程序之前,安装下一节中介绍的工具和库。特别是,您应该始终安装Setuptools,因为它使您可以更轻松地使用其他第三方Python库。

OS X附带的Python版本非常适合学习,但不利于开发。

附录2:

苹果对El Capitan进行了一些更改(包括System Integrity
Protection
),这些更改可能会导致安装失败,并且臭名昭著的“未找到要安装的软件”。例如:

解决方法:

使用自制软件。我上面引用的在Mac OS X上安装Python正是建议的以下内容:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

$ vi ~/.profile => 
...  
export PATH=/usr/local/bin:/usr/local/sbin:$PATH

$ brew install python

如果这不适合您,请告诉我。