一、pyc文件

我们开发一个python脚本,文件的后缀为.py。如果运行这个py文件,Python内部会先将源码文件(.py文件)编译成字节码(byte code)文件(.pyc文件)。接着运行编译后的字节码,最后在控制台输出此次运行的结果。总结来说,pyc是一个可执行的被编译后的py文件,其特点就是在运行时,可以省去python编译器去再次编译的时间,进而就优化了性能。

二、如何编译?

2.1、源码方式编译

写一个Python脚本,使用代码来进行编译,对于熟练使用Python的是一个好办法。

import py_compile as pcpc.compile('xxx.py')
2.2、cmd命令方式编译

首先定位到py文件所在的目录,打开cmd。输入以下命令即可

python -m py_compile xxx.py

三、多文件编译

值得注意的是,我们在实际工作中,也不会只用一个文件。这时候需要一次性把项目目录下的所有源码文件编译,操作也很简单。也是有两种方式来进行编译,各自选择适合自己的即可。

3.1、多文件源码方式编译
import compileall as ca# 将d盘xxx\xx目录下所有源码文件编译
ca.compile_dir(r'D:\\xxx\xx')
3.2、多文件cmd命令方式编译
python -m compileall D:\\xxx\xx

四、编译后运行注意事项

4.1、原平台运行

编译后会在有源码的目录下生成一个_pycache_目录,里面存放了当前目录下所有的编译后的pyc文件。需要做的几点如下所示:

1)将_pycache_下的pyc拷贝到对应文件目录下。

2)删除源码py文件。

3)重命名pyc文件为原源码文件名字。

4)原py文件删除即可

4.2、跨平台运行注意事项

编译后的pyc是可跨平台的,但是python的版本是不能跨的。比如你使用3.6版本去编译好的一个pyc文件,在另一个平台上也是需要使用3.6版本的。(没有具体测试)

python文件编译为pyc后运行相关推荐

  1. python文件编译与pyc反编译

    pyc是编译py之后生成的二进制文件.当我们发布系统的时候不想让别人看到源代码,就需要将py文件编译生成pyc文件,对外只提供pyc文件.同样,如果拿到一个python程序,只有pyc文件,我们就无法 ...

  2. 什么是pyc文件,把python的py文件编译成pyc文件,把pyc文件反编译成py文件。以及python编译的如何设置不生成pyc文件

    文章目录 1 什么是pyc文件 1.1 什么是pyc文件 1.2 pyc文件是怎么生成的,有什么好处 2 把python的py文件编译成pyc文件 2.1 使用python内置库py_compile把 ...

  3. python文件编译_python下编译py成pyc和pyo

    什么是pyc文件 pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的 ...

  4. py文件编译为pyc(命令与脚本)

    http://www.cnblogs.com/dkblog/archive/2009/04/16/1980757.html 其实很简单, 用 python -m py_compile file.py ...

  5. py文件编译为pyc

    说明: 我是一个python初学者,希望能够得到各位前辈的指导,大家一起交流.mail:sislcb at 126 dot com 什么是pyc文件 pyc是一种二进制文件,是由py文件经过编译后,生 ...

  6. python文件 py、pyc、pyo、pyd文件

    py是源文件, pyc是源文件编译后的文件 pyo是源文件优化编译后的文件 pyd是其他语言写的python库 先把源码py文件编译成pyc或者pyo,然后由python的虚拟机执行,相对于py文件来 ...

  7. python源码只有编译成二进制_【转】Python源代码编译成 pyc pyo

    原文地址 http://blog.csdn.net/sislcb/archive/2009/03/18/4002414.aspx什么是pyc文件 pyc是一种二进制文件,是由py文件经过编译后,生成的 ...

  8. 转:Python源代码编译成 pyc pyo

    [转] Python源代码编译成 pyc pyo 2011-02-28 17:23 [转] Python源代码编译成 pyc pyo 什么是pyc文件 pyc是一种二进制文件,是由py文件经过编译后, ...

  9. PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译

    ​ 在这里分享一些技巧和经验给大家.辛苦撰文分享,转载或引用请保留本文作者信息及文章链接. 作者的环境: win7+python3.5(anaconda3) 理论上,win7及以上的系统和python ...

最新文章

  1. vue 怎么全局到入常量_午后躺椅上看关于Vue的20点
  2. 根据数组中对象的属性值排序倒叙
  3. ubuntu16.04+anaconda3+python3.6安装OpenCV3
  4. 深入浅出谈CUDA(二)
  5. 使用WebService与Oracle EBS进行集成(下)
  6. 矩形窗函数的频谱图_读书笔记6-单频矩形脉冲信号
  7. AutoPostBack与AutoComplete介绍
  8. 创建高质量Python工程(1)-如何设计结构清晰的目录结构(转)
  9. 如何测试5.1声卡测试软件,功能至上--德国坦克AUREON 5.1初步测试
  10. 基于以太网为基础的POE供电温湿度变送器解决方案
  11. Android x86 镜像 安装到 PC 机上
  12. 软件开发七宗罪(转发)
  13. Javaweb-前端三件套入门
  14. 初中语文古诗词作者生平归纳
  15. Command(命令模式)行为型
  16. IntelliJ IDEA 2018.2.4 x64破解
  17. can和could的用法_中学生的难题can和could有什么关系,只需三分钟让你轻松记
  18. BZOJ2648: SJY摆棋子2716: [Violet 3]天使玩偶
  19. VBA学习笔记5:将同一工作簿的数据按照类别拆分为多个工作簿
  20. linux微软蓝牙鼠标搜不到,计算机搜索蓝牙设备,概率搜索不到

热门文章

  1. 基于FPGA的单目内窥镜定位系统设计(中)
  2. 天哪,没有设计经验的ta,居然掌握着“PS大师级
  3. python爬虫二级子页面爬取
  4. [IOS APP]长恨歌-王安忆有声小说
  5. H264—帧,片,参数集,NALU等概念
  6. 传智播客技术社区_播客与网络技术的未来
  7. Java---数据库---数据库DDL
  8. storm spout读取mysql_Storm中Spout使用注意事项小结
  9. android小说模式,傲游Android版预读模式让手机小说控大饱眼福
  10. js截取最后一个特定字符后面的字符串