我在执行.py文件时看到了一些区别。我观察了两个案例,
1)当我使用python mypython.py
我得到了结果。但是.pyc文件没有在我的文件夹中创建。
2)当我使用python -c "import mypython"
我得到了相同的结果。但.pyc文件是在我的文件夹中创建的。
我的问题是为什么第一个案例没有创建.pyc文件?
答案 0 :(得分:1)
当您需要在另一个脚本或程序中使用文件的内容时,通常会使用导入,请参阅What does python file extensions, .pyc .pyd .pyo stand for?。因此,为了更具体地回答这个问题,创建.pyc是为了便于以后访问文件的内容,并且仅在使用import命令时创建。
答案 1 :(得分:0)
Python仅为导入的模块保存预编译的.pyc
文件,而不是为您正在运行的主脚本保存。
将程序作为主程序运行或将其作为模块导入并不完全相同,但非常相似,因为在模块中,顶级的所有内容都在导入时执行。
请注意,对于主程序,源代码也被完全解析和编译(例如,如果在最后一行中有语法错误,则不执行任何操作)。不同之处仅在于编译结果未保存回磁盘。