当前位置: 首页 > 面试题库 >

.pyc文件什么时候刷新?

慕光赫
2023-03-14
问题内容

我知道“ .pyc”文件是纯文本“ .py”文件的编译版本,是在运行时创建的,以使程序运行更快。但是我观察到了一些事情:

  1. 修改“ py”文件后,程序行为会更改。这表明“ py”文件已编译或至少经过某种哈希处理或比较时间戳,以便确定是否应重新编译它们。
  2. 删除所有“ .pyc”文件(rm *.pyc)后,有时程序行为也会改变。这表明它们不是在更新“ .py”时被编译的。

问题:

  • 他们如何决定何时编译?
  • 有没有办法确保他们在开发过程中进行更严格的检查?

问题答案:

.pyc文件被创建(并可能覆盖)仅当蟒蛇文件是否已被其他脚本导入。如果调用了导入,Python将检查.pyc文件的内部时间戳是否不早于相应的.py文件。如果是,它将加载.pyc;。如果.pyc不存在或尚不存在,Python会将.py文件编译为.pyc并加载。

“严格检查”是什么意思?



 类似资料:
  • 我知道“. pyc”文件是纯文本“. py”文件的编译版本,在运行时创建,以使程序运行得更快。然而,我观察到一些事情: 修改py文件后,程序行为发生变化。这表明"py"文件已经编译,或者至少经过某种哈希过程或比较时间戳,以判断它们是否应该重新编译。 删除所有. pyc文件()时,有时程序行为会改变。这将表明它们没有在更新“. py”s时编译。 问题: 他们如何决定何时进行汇编 有没有办法确保他们在

  • 问题内容: 什么时候需要刷新文件? 我从不这样做,因为我调用File.Close,并且我认为它会自动刷新,不是吗? 问题答案: 您会注意到os.File没有.Flush(),因为它不需要一个,因为它没有缓冲。写入是直接syscall写入文件。 当您的程序退出时(即使崩溃),操作系统将自动关闭所有打开的文件,并且文件系统会在您处理完磁盘后将您的更改写入磁盘(有时会在程序退出后几分钟) 。 调用os.

  • 本文向大家介绍.py和.pyc文件有什么区别?,包括了.py和.pyc文件有什么区别?的使用技巧和注意事项,需要的朋友参考一下 Python编译.py文件并将其另存为.pyc文件 .pyc包含Python源文件的编译字节码,不会为您执行的主程序文件创建.pyc(仅对于导入的模块)。 .pyc文件包含编码的python字节码。 如果要导入模块,则模块将计算两个数的加法 示例 输出结果 如果您以“ e

  •   .py 文件是程序的源代码。 .pyc 文件是程序的编译字节。   Python 编译 .py 文件并将其保存为 .pyc 文件。 然后由Python虚拟机执行。   在执行主要源代码之前,python会查找它的编译版本(.pyc 文件),如果 python 找到,那么它将在虚拟机的帮助下执行它。   如果没有,那么它将寻找一个 .py 文件编译它然后执行 .py 文件。 基本上,.pyc 文

  • 问题内容: 已经了解Python是一种解释性语言…但是,当我查看Python源代码时,我看到的是Windows标识为“编译的Python文件”的文件。这些从哪里来? 问题答案: 它们包含字节码,这是Python解释器将源代码编译到的字节码。然后,此代码由Python的虚拟机执行。 Python的文档解释了这样的定义: Python是一种解释型语言,与编译型语言相反,尽管由于字节码编译器的存在,两者

  • 本文向大家介绍什么时候用delegate,什么时候用Notification?相关面试题,主要包含被问及什么时候用delegate,什么时候用Notification?时的应答技巧和注意事项,需要的朋友参考一下 答:delegate针对one-to-one关系,并且reciever可以返回值 给sender,notification 可以针对one-to-one/many/none,recieve