python:文件读取的性能改进?

python:文件读取的性能改进?,python,performance,Python,Performance,如果我有一个python模块,它在开始时(不是在函数或类中)从文件中读取一个值,那么它是否每次都被执行?或者pyc文件是否读取a中的值并将该值存储在编译文件中?是的,每次加载模块时都会执行该操作。除了使用重新加载,程序第一次导入模块时,模块将只导入并执行一次。同一模块的进一步导入只会绑定发生导入的作用域中的现有名称,因此读取只会执行一次 如果您询问编译步骤是否读取文件并将其嵌入到.pyc中,则答案是否定的。代码在编译时根本不运行。您实际上不希望.pyc文件存储文件内容,因为预编译的Python文

如果我有一个python模块,它在开始时(不是在函数或类中)从文件中读取一个值,那么它是否每次都被执行?或者pyc文件是否读取a中的值并将该值存储在编译文件中?

是的,每次加载模块时都会执行该操作。

除了使用
重新加载
,程序第一次导入模块时,模块将只导入并执行一次。同一模块的进一步导入只会绑定发生导入的作用域中的现有名称,因此读取只会执行一次


如果您询问编译步骤是否读取文件并将其嵌入到
.pyc
中,则答案是否定的。代码在编译时根本不运行。

您实际上不希望
.pyc
文件存储文件内容,因为预编译的Python文件无限期地存在(只有当相应的源代码发生更改时,才会重新生成它们)。Python无法知道文件在读取后是否发生了更改。