py文件是python的腳本文件。
Python在執行時,首先會將.py文件中的源代碼編譯成Python的bytecode(字節碼),然后再由PythonVirtualMachine(Python虛擬機)來執行這些編譯好的bytecode。這種機制的基本思想跟Java,.NET是一致的。
然而,PythonVirtualMachine與Java或.NET的VirtualMachine不同的是,Python的VirtualMachine是一種更高級的VirtualMachine。
這里的高級并不是通常意義上的高級,不是說Python的VirtualMachine比Java或.NET的功能更強大,而是說和Java或.NET相比,Python的VirtualMachine距離真實機器的距離更遠。
或者可以這么說,Python的VirtualMachine是一種抽象層次更高的VirtualMachine。基于C的Python編譯出的字節碼文件,通常是.pyc格式。