【问题标题】:Understanding python compile了解python编译
【发布时间】:2014-03-21 07:03:05
【问题描述】:

我在执行 .py 文件时看到了一些不同。我观察了两个案例,

1) 当我使用 python mypython.py 运行 .py 文件时

我得到了结果。但 .pyc 文件未在我的文件夹中创建。

2) 当我使用 python -c "import mypython" 运行 .py 文件时

我得到了同样的结果。但是 .pyc 文件是在我的文件夹中创建的。

我的问题是为什么第一个案例没有创建 .pyc 文件?

【问题讨论】:

    标签: python compiler-construction interpreter


    【解决方案1】:

    Import 通常用于当您需要在另一个脚本或程序中使用文件的内容时,请参阅What does python file extensions, .pyc .pyd .pyo stand for?。因此,为了更具体地回答这个问题,创建 .pyc 是为了方便将来访问文件的内容,并且仅在使用 import 命令时创建。

    【讨论】:

    • 你在这里回答什么问题?
    • 修复了它,但我的回答的重点是把链接放在那里。
    【解决方案2】:

    Python 只为导入的模块保存预编译的 .pyc 文件,而不是您正在运行的主脚本。

    将程序作为主程序运行或将其作为模块导入不是完全相同的事情,但非常相似,因为在模块中,顶层的所有内容都是在导入时执行的。

    请注意,对于主程序,源代码也已完全解析和编译(例如,如果您在最后一行出现语法错误,则不会执行任何操作)。不同的只是编译的结果没有保存回磁盘。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-18
      • 2011-03-18
      • 2014-08-29
      相关资源
      最近更新 更多