我遇到一个奇怪的错误,某些模块无法导入。尝试导入它们时,我收到此错误。
RuntimeError: unable to get file status from '/path/to/file.py'
到目前为止,所有这些不可重复的模块都位于网络驱动器上,但位于网络驱动器上的其他模块是可导入的,到目前为止我还没有找到差异在那些是不可导入的之间。所有这些模块都在最近工作。
快速搜索谷歌并未显示与“文件状态”相关的任何类似错误。之前有没有人遇到过这个错误?
答案 0 :(得分:0)
似乎这个问题与坏模块都具有无效文件创建时间(即stat.st_ctime
)的事实有关。我认为这个问题很可能是由一些在Linux上运行的备份软件引起的,它以某种方式设法清除文件创建时间。
导入python模块时,我相信它会比较.py
文件和.pyc
文件的创建时间(如果存在),以了解它是否需要重新编译{{1 }}。在这种情况下,当它无法找到文件的文件创建时间时就会崩溃。
我创建了一个脚本,遍历整个目录树,读取,删除,然后覆盖每个.pyc
文件以强制创建时间。在那之后,一切似乎都恢复正常。