我是一个完全不懂Python的新手,所以问题有点儿傻。 据我了解,第一次执行*.py程序时,会将字节码创建成 *.pyc 文件并在*.py文件更改之前一直使用。
请问在项目中可以找到这个*.pyc字节码位于哪里?
我认为应该在bin目录下,但那里没有任何东西。
请问在项目中可以找到这个*.pyc字节码位于哪里?
我认为应该在bin目录下,但那里没有任何东西。
导入的模块会创建*.pyc文件,并将它们放置在包含.py文件的同一目录中。然而...对于程序的主脚本不会创建.pyc文件。换句话说...如果在命令行上调用"python myscript.py",则myscript.py将没有.pyc文件。
这是Python 2.x的行为。但在Python 3.x中,.pyc文件保存在__pycache__
目录中。有关详细信息,请参见David Glick的答案。
[编辑:添加关于Python 3.x的说明。]
在Python 3.2及以上版本中,编译后的文件被放置在名为__pycache__
的子目录下,并且根据创建它们的Python解释器命名不同。这对从多个Python版本导入同一Python模块的人很有用。在Python 3.2以前的版本中,.pyc文件会被放置在与.py文件相同的目录中。具体信息请参见http://docs.python.org/dev/whatsnew/3.2.html#pep-3147-pyc-repository-directories
它们总是在包含您的.py
文件的目录中创建。此外,它们为导入的模块创建,而不是直接运行的文件。
如果想要创建.pyc
文件,请启动Python解释器并只需import
所选择的模块即可。
PYTHONDONTWRITEBYTECODE
环境变量,它们就不会存在。 - Jean-François Fabre通常情况下,.pyc文件会在与其对应的文件相同的目录中创建。例如,my_file.py和my_file.pyc应该在同一个位置。
-X pycache_prefix=PATH
标志或PYTHONPYCACHEPREFIX
环境变量来更改存储.pyc文件树的位置。请参阅文档。 - Jadzia626