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

时间:2010-10-18 09:04:37

标签: python linux ubuntu

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

我该怎么做?

5 个答案:

答案 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

因此,如果我们创建一个可以自动运行此命令的文件,问题就会解决。除此之外,您可以拥有自己的图标,甚至不必打开终端!

查看此文章:Run Commands From It's Icon (Easiest Way)