版权声明:本文为博主原创文章,欢迎扩散,扩散请务必注明出处。
Python语言是一种解释型、面向对象、动态数据类型的高级程序设计语言。
编译型与解释性语言列表
如下图所示
Python脚本在执行程序时,逐行读取源代码,逐行解释,逐行执行。对于重复执行的情形,很显然,这将耗费了大量重复性解释工作。为了减少这一重复性的解释工作,Python引入了pyc文件,pyc文件是将py文件的解释结果保存下来的文件,这样,下次再运行的时候就不用再解释了,直接使用pyc文件就可以了,这无疑大大提高了程序运行速度。
对于当前调用的主程序不会生成pyc文件; 以import xxx或from xxx import xxx等方式导入主程序的模块才会生成pyc文件; 每次使用pyc文件时,都会根据pyc文件的创建时间和源模块进行对比,如果源模块有修改,则重新创建pyc文件,并覆盖先前的pyc文件,如果没有修改,直接使用pyc文件代替模块; pyc文件统一保存在模块所在目录的__pycache__文件夹内。
### 如下示例,生成的相关pyc文件
[root@centos7 ~]# ls -hltr /root/project/mysite/testapp/__pycache__
total 16K
-rw-r--r--. 1 root root 123 Oct 19 11:11 __init__.cpython-36.pyc
-rw-r--r--. 1 root root 161 Oct 19 11:11 models.cpython-36.pyc
-rw-r--r--. 1 root root 164 Oct 19 11:11 admin.cpython-36.pyc
-rw-r--r--. 1 root root 338 Oct 19 11:11 views.cpython-36.pyc
###执行Python 脚本
[root@centos7 ~]# vim hello.py
print('Welcome Pyhton')
[root@centos7 ~]# chmod u+x hello.py
[root@centos7 ~]# python3 hello.py
Welcome Pyhton