是否也创建了内置模块的pyc文件?
我的场景: 我有一个文件abc.py。
在abc.py中,我导入了os模块,并打印了os.getcwd()。
在这里,我期望必须创建os.pyc文件,但未创建os.pyc。
有什么建议吗?
答案 0 :(得分:0)
这取决于您的安装,但是内置模块和分发程序包将缓存在系统位置。 找到它们的方法如下:
module.__file__
加载的文件__pycache__
➜ ~ python3
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.__file__
'/usr/lib/python3.6/os.py'
>>>
➜ ~ ll /usr/lib/python3.6/os.py
-rw-r--r-- 1 root root 37K Oct 22 2018 /usr/lib/python3.6/os.py
➜ ~ ll /usr/lib/python3.6/__pycache__/os*
-rw-r--r-- 1 root root 29K Dec 3 20:37 /usr/lib/python3.6/__pycache__/os.cpython-36.pyc
➜ ~
内置软件包和dist软件包在全局范围内缓存,以便所有脚本都可以使用它们。
如果您使用的是virtualenv