【发布时间】:2015-05-25 05:00:54
【问题描述】:
有时我通过指向make PYTHON_TEST=path_of_module_to_test test 在特定模块上运行unittest,如果此模块path_of_module_to_test test 导入了其他一些已更新的python 模块,则从该模块完成的导入将从更新的py 源文件或从未更新的 pyc 文件,还是导入会导致更新依赖的 pyc 文件?
【问题讨论】:
-
Python (CPython 2.x) 检查
.pyc(缓存字节码) 是否过期并重新编译一个新的根据需要缓存副本。 -
我知道,但是如果我更新了一个 python 源文件但没有编译它,并且它有旧的 pyc python 字节码文件位于同一目录中,那么如果我在
path_of_module_to_test上运行测试将获取更新的 py 或 pyc 文件,或者在导入完成时 pyc 将得到更新?