假设我有一个名为scr.py
的python脚本。运行python scr.py
会创建一个scr.pyc
文件,该文件由Python解释。现在,让我说我在scr.py
运行时进行了更改,然后在另一个终端窗口中,我再次运行python scr.py
。怎么了?原始scr.pyc
文件是否被覆盖?有没有可能出现的问题?你可以同时运行同一个文件的两个稍微不同的副本吗?
答案 0 :(得分:0)
是的,它会尝试用新版本覆盖.pyc文件。但这不会影响第一个程序,除非调用显式模块重新加载,因为模块被加载到内存中。
例如,OTOH,例外的打印堆栈需要读取源文件,如果它被更改,将打印错误的行。因此,只有在此之后正确重新加载模块时,才建议立即进行此替换。