如何在 Ubuntu 的可执行程序中转换 python 程序 .py?

新手上路,请多包涵

我有一个简单的 python 程序,我想要这个程序的可执行版本(适用于 Ubuntu Linux)以避免在终端中使用 python myprogram.py 运行它。

我怎样才能做到这一点 ?

原文由 xRobot 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 973
2 个回答

没有必要。您可以使用将文件标记为可执行文件

chmod +x filename

确保它在第一行有一个 shebang 行:

 #!/usr/bin/env python

而且你的linux应该能够理解这个文件必须用python解释。然后它可以被“执行”为

./myprogram.py

原文由 relet 发布,翻译遵循 CC BY-SA 2.5 许可协议

正如其他人已经指出的那样,您可以将 shebang 添加到文件的顶部

#!/usr/bin/python#!/usr/bin/env python

并添加执行权限 chmod +x program.py

允许您使用 ./program.py

另一种选择是使用 setuptools 以 Python 方式安装它。创建自己的 setup.py 并将其放入其中:

 from setuptools import setup

setup(
    name = 'Program',
    version = '0.1',
    description = 'An example of an installable program',
    author = 'ghickman',
    url = '',
    license = 'MIT',
    packages = ['program'],
    entry_points = {'console_scripts': ['prog = program.program',],},
)

这假设您有一个名为 program 的包,其中包含一个名为 program.py 的文件,其中包含一个名为 main() 的方法。要以这种方式安装,像这样运行 setup.py

python setup.py install

这会将其安装到您的平台站点包目录并创建一个名为 prog 的控制台脚本。然后,您可以从终端运行 prog

有关 setup.py 的更多信息的一个很好的资源是这个站点:http: //mxm-mad-science.blogspot.com/2008/02/python-eggs-simple-introduction.html

原文由 ghickman 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题