0

我用 python 编写了一个程序,它是 OSX 上解压缩文件的另一个前端。我希望能够双击该文件并使用我编写的程序打开。如何使程序自动知道它正在使用该文件打开并处理该文件?

4

3 回答 3

0
  • 您需要使用以下命令使您的脚本可执行chmod a+x <your script.py>

  • 您还需要告诉您的操作系统需要 python 解释器来执行此文件。在 Linux#!/usr/bin/env python中,文件顶部的行是这样做的。我认为它在 OSX 中是一样的。

  • 然后右键单击并选择“打开方式”,然后选择“其他...”。并选择您的脚本。

需要正确配置 Python 脚本才能在操作系统以这种方式调用它时运行。

另一种方法(警告:我没有亲自尝试过)是使用超级用户论坛上此答案中建议的 shell 脚本。

于 2013-09-01T03:36:19.027 回答
0

OS X 上的 Python 脚本默认不会被 Finder 识别为可启动的应用程序。您需要做的是使用一个工具,将您的 Python 脚本打包为 Mac OS X 应用程序。然后,您可以右键单击或按住 ctrl 单击您选择的文件类型的文件,并通过“打开方式...”对话框找到该应用程序。

我知道这样做的一个选项是 MacPython 包的一部分,称为 py2app:

http://wiki.python.org/moin/MacPython/py2app

所以,你的步骤是:

1) 使用 py2app 将 Python 脚本打包为可启动的应用程序

2) 通过右键单击或按住 ctrl 单击该文件类型之一并在 OS X Finder 中选择“打开方式...”,将应用程序与您希望使用的文件类型相关联。

于 2013-09-01T07:04:08.723 回答
-3
import sys
print("Program.py executing...")
for x in sys.argv:
    print(x)

产生输出

Program.py executing...
Program.py
something.tar

我是windows,运行这个命令:

python Program.py something.tar

我认为从该命令到 OSX 没有任何变化。

正如本杰明所说,操作系统负责确定文件使用什么程序。我不知道你的操作系统的命令行是什么,但你可以通过上面的程序找到。

于 2013-09-01T03:34:57.973 回答