当前位置: 代码迷 >> python >> Python文件编译和区分,这是如何发生的
  详细解决方案

Python文件编译和区分,这是如何发生的

热度:61   发布时间:2023-06-13 16:58:47.0

在经历许多概念时,这涉及到我的观点(这可能很愚蠢)。 请告诉我以下情况是如何实现的

在一个文件夹中说我有“ z.pyc”文件(没有z.py)。

现在,我在同一位置创建了z.py。

根据我的理解,第一次执行z.py将更新z.pyc,因此从第二次试用起z.py和z.pyc应该给出相同的结果。

但这没有发生。 z.py和z.pyc每次都给出不同的结果。 请提出如何实现这种情况。

首次执行z.py将更新z.pyc

不,“执行z.py ”将永远不会创建,更新或引用z.py import z语句将创建或使用z.pyc

1) .pyc文件是在执行文件import时创建的,而不是在run 执行文件时创建的。

2)如果需要, import z将刷新编译的版本。

3)运行python z.pyc将始终运行文件的编译版本,而python z.py将永远不会运行文件的编译版本。

因此,可能导致上述混乱结果的一系列事件是:

$ echo "print 'first file'" > z.py
$ echo "import z" > main.py
$ python main.py
first file
$ echo "print 'second file'" > z.py
$ python z.py
second file
$ python z.pyc
first file

要学习的课程? 永远不要运行python z.pyc ,永远不要运行python z.py

  相关解决方案