编译Python
我如何编译并运行一个python文件(* .py扩展名)?
python yourfile.py
你必须先安装python。 它会自动将你的文件编译成一个.pyc二进制文件,然后为你运行它。 它会自动重新编译任何时候您的文件更改。
Python在执行它们之前将其文件编译为字节码。 这意味着你必须在目标机器上安装一个Python解释器。
如果你不想在目标机器上安装Python,可以使用py2exe , py2app或类似的东西。
如果你只是想编译源代码,而不运行它们,你可以这样做
compileall.py <directory>
这个命令将recursion地在该目录中编译python代码
编译脚本通常位于目录中
/usr/local/lib/python2.6
即<prefix>/lib/python2.6
(或类似,根据前缀设置一个Pythonconfiguration)
正如Lulu所build议的那样,您应该确保生成的.pyc和.pyo文件可以由您关心的用户执行。
compileall也可以作为一个模块使用
import compileall compileall.compile_dir(path)
Python是一种解释型语言,所以你不需要编译它; 只是为了运行它。 正如它发生的那样,标准版本的python将把它编译成“字节码”,就像Java等一样,并将保存(在.pyc文件中)并在下一次运行,节省时间,如果你还没有更新该文件。 如果你已经更新了文件,它将被自动重新编译。
你也可以用-O标志运行python,它将生成.pyo文件而不是.pyc。 我不确定它有多大的区别。 如果速度很重要,请使用psyco。
是的,在Unix上(包括Linux,BSD和Mac OS X,或者在windows上的unix shell),你可以使用文件顶部的shebang行来使用python自动运行文件。 在Windows上,相当于将.py文件与python.exe相关联,然后确保您的PATHEXT环境variables包含“.PY”扩展名。
然而,对于Windows,你更可能想要编写一个GUI程序(可能使用PyQT4和ERIC4),它有一个.pyw文件作为其主要脚本,并且.pyw与pythonw(在Windows上带有python)相关联。 这将让你像其他GUI程序一样在Windows上运行python脚本。 对于发布和分发,你可能想要像使用py2exe那样编译成一个可执行文件,就像其他人提到的一样。
要添加到Paul McMillan的答案 ,如果你在Windows上,并且你已经安装了Python,那么任何以扩展名“.py”结尾的文件都应该与python
可执行文件关联,这样你可以像这样运行它:
> myfile.py
在* nix中,你可以用#!/usr/bin/python
开始这个文件,像这样运行它:
$ ./myfile.py
在* nix系统中,如果文件的前两个字符是#!
那么它将执行指定的可执行文件,我在这里设置为/usr/bin/python
。
如果你想在Windows上将python源文件转换成双击的.exe
文件,你可以使用py2exe ,它可以帮助你构build一个易于分发的包。
在大多数类Unix系统上,您可以使用shebang来告诉操作系统应该调用哪个解释器。 你简单地说
#!/path/to/python
在文件的第一行中,当然你必须用系统中的path来replace“/ path / to /”。 在大多数情况下,这将是“/ usr / bin / python”或“/ usr / local / bin / python”。 在unix系统上,你也可以查找path
"#!usr/bin/env python"
或调用该命令
which python
findpath。 然后你可以用命令运行你的程序
./yourprogram.py
如果它告诉你,你没有权限这样做,你必须使用该命令
chmod a+x yourprogram.py
回答Windows
- 首先你必须安装python
- 然后设置pathvariables
- 之后,写你的Python程序并保存
- 认为有一个名为“ hello.py ”的python程序
- 打开cmd.exe
- 然后转到您保存“ hello.py ”文件的path,
- 然后inputpython hello.py然后按回车键。
现在Python代码自动编译并显示结果。