我遇到了一个非常奇怪的问题。我已经将一些 python 代码从一个版本更改为下一个版本,它似乎破坏了代码(尽管通过了测试)。当我去添加调试语句时,代码开始正常工作。再试一次就失败了。经过实验,我意识到只有在更改或删除 pyc 文件后才能运行一次。什么??有没有其他人经历过这个?有什么想法可以解决这个问题吗?
tldr:代码仅在 pyc 更改或删除然后停止工作后才有效。
编辑:问题似乎是 pyc 文件本身。我在没有运行代码的情况下编译了 pyc 文件并尝试运行它,但它没有工作。我做了一些研究,我认为 python 创建这些 pyc 的方式是,当我尝试运行它时,它会将其加载到环境中,然后创建 pyc。这意味着它在从源加载时工作,但从 pyc 加载时失败。