Answers:
由于您的python文件是字节编译的,因此您需要通过python解释器运行它
python yourfile.pyc
您可以直接运行.py文件的原因是因为您已
#!/usr/bin/python
要么
#!/usr/bin/env python
或.py文件第一行中的类似内容。这告诉您的外壳程序使用python解释器执行文件的其余部分。
Python编译.py文件并将其保存为.pyc文件,以便它可以在后续调用中引用它们。.pyc包含Python源文件的编译字节码,这是Python解释器将源代码编译到的字节码。然后,此代码由Python的虚拟机执行。删除它们(.pyc)没有什么害处,但是如果您要进行大量处理,它们将节省编译时间。
Python是一种解释型语言,与编译型语言相反,尽管由于字节码编译器的存在,两者之间的区别可能很模糊。编译通常意味着转换为运行速度最快的机器代码。但是口译员会采用人类可读的文本并执行它。他们可以在中间阶段做到这一点。
例如,当您运行myprog.py源文件时,python解释器会首先查看是否myprog.pyc
存在(这是的字节码编译版本myprog.py
),以及是否比早myprog.py
。如果是这样,解释器将运行它。如果它不存在,或者myprog.py
比它更新(意味着您已经更改了源文件),则解释器首先编译myprog.py
为myprog.pyc
。
上面的示例有一个例外。如果放在#! /usr/bin/env python
的第一行myprog.py
,则使其成为可执行文件,然后myprog.py
自行运行。