我有一个简单的python程序,我想要这个程序的可执行版本(对于Ubuntu Linux),以避免在python myprogram.py
的终端中运行它。
我该怎么做?
答案 0 :(得分:26)
没有必要。您可以使用
将文件标记为可执行文件chmod +x filename
确保第一行有一个shebang行:
#!/usr/bin/env python
你的linux应该能够理解这个文件必须用python解释。然后可以将其作为
执行./myprogram.py
答案 1 :(得分:26)
正如其他人已经指出的那样,你可以将shebang添加到文件的顶部
#!/usr/bin/python
或#!/usr/bin/env python
并添加执行权限chmod +x program.py
允许您使用./program.py
另一种选择是使用setuptools以pythonic方式安装它。创建一个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
这会将它安装到您的平台site-packages目录并创建一个名为prog的控制台脚本。然后,您可以从终端运行prog
。
有关setup.py的更多信息的一个很好的资源是此网站:http://mxm-mad-science.blogspot.com/2008/02/python-eggs-simple-introduction.html
答案 2 :(得分:3)
您可以尝试使用cxfreeze
等模块答案 3 :(得分:2)
在你的python程序的顶部添加:
#!/usr/bin/python
答案 4 :(得分:2)
我知道最简单,最准确,最好的解决方案。我遇到了和你一样的问题,但是现在,我可以用它的图标运行我的Python / Tkinter(GUI)程序。
当我们在Windows上创建.bat文件时,我们也可以在Linux中轻松创建等效的.bat文件。感谢这个文件,我们可以在没有终端的情况下启动我们的程序,即使它需要在终端上启动命令(如Python程序),双击它的图标(真的.png图标:))或者我们可以写命令到促进我们的工作。 那么,这将如何发生?
例如,如果我们想运行.py程序,我们只需要将此命令写入终端:
python3 locationOfPyFile
因此,如果我们创建一个可以自动运行此命令的文件,问题就会解决。除此之外,您可以拥有自己的图标,甚至不必打开终端!