python运行pyc文件_python中__pyc__文件的生成和作用
本文出自“阿敏其人”简书博客,转载请注明出处。
文/阿敏其人
当我们的python文件被编译过,文件之间存在import关系,就会生成一个__pyc__文件夹。
比如我们新建一个工程,里面一共两个py文件。
分别是ttt.py和imp.py
ttt.py里面就只有一个方法。
imp.py import了ttt。编译过后,我们会看见多了一个__pyc__文件夹
.
imp.py
import ttt
ttt.sayHello()
image.png
内部
image.png
一、存在的意义
主要意义:加快启动速度
原因
Python 在解释源程序时分为两步:
第一步:将源码转为字节码
第二步:将字节码转换为机器码
image.png
pyc 文件是由 Python 解释器将 模块的源码 转换为 字节码。
(pyc,py代表pychon,c 是 compiled的含义,pyc即编译过的python文件 )
当我们的程序没有修改过,那么下次运行程序的时候,就可以跳过 从源码到字节码 的过程,直接加载 pyc 文件。
二、命令生成 pyc 文件
生成单个pyc文件
对于py文件,可以执行下面命令来生成pyc文件。
python -m test.py
另外一种方式是通过代码来生成pyc文件。
import py_compile
py_compile.compile('/path/test.py')
批量生成pyc文件
针对一个目录下所有的py文件进行编译。python提供了一个模块叫compileall,具体请看下面代码:
import compileall
compileall.compile_dir(r'/path')
这个函数的格式如下:
compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])
三、注意点
1、import过的文件才会自动生成 pyc文件。
2、pyc文件不可以直接看到源码,可以被反编译
3、pyc的内容,是跟python的版本相关的,不同 版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的python是无法执行的
END
python运行pyc文件_python中__pyc__文件的生成和作用相关推荐
- python各种文件_Python中对 文件 的各种骚操作
Python中对 文件 的各种骚操作 python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getc ...
- python如何创建文件_python中创建文件、读取文件内容
1.选择文件夹,单击右键,点击New -> Python file 2.命名好之后,如我命的就是创建文件. 3.文件命名好了以后,可以编辑代码 如: nf=open("pi_digit ...
- python csv读写方法_python中csv文件的若干读写方法小结
如下所示: //用普通文本文件方式打开和操作 with open("'file.csv'") as cf: lines=cf.readlines() ...... //用普通文本方 ...
- python显示目录中的文件_Python中的文件和目录操作实现
Python中的文件和目录操作实现 对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这 ...
- python打开dat文件_python中对文件的操作
""" 在变量,序列(这里的序列其实就是元组,列表,字符串,集合,字典)和对象中存储的数据是暂时的,程序结束就会丢失. 为了能够长世界地保存程序中的数据,需要将程序中的数 ...
- python中怎么打开文件_Python中打开文件的方式(With open)
1.读文件 要以读文件的模式打开一个文件对象,使用Python内置的open()函数,传入文件名和标 示符: f = open( '/Users/michael/test.txt', 'r' ) 标示 ...
- python中简述文件_python中的文件操作
文件的操作 文件操作时,python首先会拿到文件的句柄: f=open('filename','w',encoding='utf8') #写模式打开文件,拿到文件句柄:f为文件句柄 f=f.read ...
- python读取文件的三种方式_python中读取文件的f.seek()方法
用于二进制文件中 F.seek方法 作用: 设置读写位置 F.seek(偏移量, whence=相对位置) 偏移量 大于0的数代表向文件末尾方向移动的字节数 小于0的数代表向文件头方向中移动的字节数 ...
- python不同数据的读入_python读写不同编码txt文件_python读写txt文件
python读写不同编码txt文件_python读写txt文件 以后整理规范 [python] view plaincopy import os import codecs filenames=os. ...
最新文章
- App列表之圆角ListView源码
- Python_note2 基本图形绘制+turtle库使用
- Python 入门 Day4
- 细数移动IM开发中的那些坑
- 中国旅游日出游火爆 中国第一水乡游人突破5万
- 【MM模块】Invoice for POs with Acc Assignment 科目指派
- 深度思考 | 从BERT看大规模数据的无监督利用
- c#实现手机号码归属地查询
- Java正则表达式:我最期望弄懂的知识,希望对大家都有帮助
- Oracle EBS SLA取值
- js清理cookie
- webRTC之智能指针std::unique_ptr::reset()使用(十四)
- Ubuntu安装Adobe Reader
- 隐藏在计算机软硬件,隐匿在计算机软硬件背后的语言
- Win10 笔记本 共享 wifi 热点
- FxCAD实验一 简单图形的绘制
- Vue.js 使用cordova camera插件调取相机
- linux c python,Python 不是 C
- Golang iota踩坑
- 半年总结——燕雀鸿鹄皆有志