python的代码编译、代码打包方法

代码编译

把代码编译成pyc文件

 import py_compilepy_compile.compile(r'文件路径')

或者直接在terminal中运行

 python -m py_compile 文件路径

编译完成后如果想要直接运行Pyc文件注意两点:
1、要把pyc文件从 pycache 目录中移动出来,放到py文件对应的位置
2、需要将model.cpython-36.pyc重命名为model.pyc

把一个目录下所有python源文件编译pyc

一般来说,我们的工程都是在一个目录下的,一般不会说仅仅编译一个py文件而已,而是需要把整个文件夹下的py文件都编译为pyc文件,python又为了我们提供了另一个模块:compileall 。使用方法如下:

 import compileallcompileall.compile_dir(r'文件夹路径')

也可以直接用命令行编译一个目录下的文件

 python -m compileall 文件夹路径

编译完成后如果想要直接运行Pyc文件注意两点:
1、要把pyc文件从 pycache 目录中移动出来,放到py文件对应的位置
2、需要将model.cpython-36.pyc重命名为model.pyc

举例:

新建项目如下:


其中:init.py

#空白

test.py

def add_math(a,b):c = a + breturn c

compile_all.py

import compileall
# 编译test文件夹下所有.py文件
compileall.compile_dir('test')

compile_one.py

import py_compile
# 编译路径为code01.py的文件为.pyc文件
py_compile.compile(r'test1.py')

test1.py

from test1.test import add_math
print(add_math(1,2))

正常运行:compile_one.py得到:



1、要把test1.cpython-36.pyc文件从 pycache 目录中移动出来,compileall中

2、需要将model.cpython-36.pyc重命名为model.pyc

不能运行

只能import pyc文件。不能用python3.6运行pyc文件

python的代码编译、代码打包方法相关推荐

  1. 减少C++代码编译时间的方法

    c++ 的代码包含头文件和实现文件两部分, 头文件一般是提供给别人(也叫客户)使用的, 但是一旦头文件发生改变,不管多小的变化,所有引用他的文件就必须重新编译,编译就要花时间,假如你做的工程比较大(比 ...

  2. Python程序伪编译与打包

    众所周知,Python是纯粹的自由软件,源代码和解释器CPython遵循GPL(GNU General Public License)协议.那么很自然会有人有这样的疑问:难道Python程序只能以源代 ...

  3. Python代码部署的三种加密方案:代码混淆、代码编译、代码打包

    前言 最近需要源码部署一个项目,因此探索一下保护源码的方式,由简单到复杂主要总结为以下三大类: 代码混淆:主要是改变一些函数名.变量名 代码打包:思路是把Python代码打包成 .exe 的可执行文件 ...

  4. 第6章 Python中的动态可执行方法 第6.1节 Python代码编译

    在介绍动态可执行方法前,本节先介绍一下Python代码编译有关的知识,因为部分内容和动态执行有些关联. 一.    Python解释器的功能 Python虽然是解释型语言,但Python代码也是可编译 ...

  5. python源代码的后缀名是_Python代码编译与反编译

    众所周知,Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议.那么很自然会有人有这样的疑问:难道Python程序只能以 ...

  6. 加密Python代码的5种方法

    Python越来越热门了,2022年1月编程语言排行榜上挤进第一. Python优点很多,比如简单易学,代码量少,能做的事很多等等,和其他语言一样,Python也有一些不可掩盖的缺点,版本不兼容,运行 ...

  7. python代码需要背吗-python程序需要编译吗

    Python是编译型语言还是解释型语言?回答这个问题前,应该先弄清楚什么是编译型语言,什么是解释型语言. 所谓编译执行就是源代码经过编译器编译处理,生成目标机器码,就是机器能直接运行的二进制代码,下次 ...

  8. nodejs代码保护方式--加密、混淆、编译、打包成exe

    如何保护价值上千万的Node.js源代码? - 掘金 甲方突然要求做私有化部署 项目是用Node.js做的,Node.js代码需要保护吗? 一般情况下不需要,因为代码跑在云端服务器上啊.只要服务器安全 ...

  9. python代码编译成pyd_python如何编译py文件生成pyc、pyo、pyd以及如何和C语言结合使用...

    python执行py文件的流程 当我们执行一个py文件的时候,直接python xx.py即可,那么这个流程是怎么样的呢.先说明一下,python执行代码实际上是先打开文件然后执行里面的代码,所以文件 ...

最新文章

  1. 单细胞转录组专题研讨会第二期
  2. phxpaxos编译示例
  3. Struts2学习笔记(六):Struts2的处理流程与Action的管理方式
  4. 如何理解皮尔逊相关系数(Pearson Correlation Coefficient)?
  5. python学习--面向过程程序设计实例
  6. 如何在电脑上搭建一个私服,实现maven项目的上传和下载?
  7. 01 超级搜索术——信息搜索:全面、快速查找全网你想要的任何信息、情报
  8. TTTTTTTTTTDDDDDDDD原来是这样。。。。。。。。。。的
  9. 学嵌入式需要报培训班吗?
  10. Kindle2018 一周使用报告
  11. 基于51单片机的烟雾火灾报警系统
  12. 计算机考研什么时候开始备考,2022考研什么时候开始准备最好 为什么
  13. 现代x64的APIC中断控制器架构
  14. 「技术选型」深度学习软件如何选择?
  15. 再谈对“重构”的学习
  16. 2.k-均值(k-means)聚类算法
  17. [第一章 web入门]粗心的小李
  18. Unity5.0 RPG角色扮演历险类游戏之 森林历险记
  19. PRes 语言常用参考
  20. java毕业设计项目源代码S2SH基于JSP的网上购书系统|商城电商购物系统

热门文章

  1. 计算机视觉原理——RANSAC
  2. 开发者社区SDK对应版本更迭信息
  3. R语言-包的安装、载入及使用方法
  4. RiboFR-Seq:将16S rRNA与宏基因组连接的方法
  5. 求求你使用Tab键好吗
  6. 微生物组—宏基因组分析专题培训7月开课啦!北京
  7. 你的肠道菌群是遗传自你父母,还是后天环境塑造的?
  8. 扩增子图表解读8网络图:节点OTU或类Venn比较
  9. 泰坦尼克号(titanic)数据集字段解释、数据导入实战
  10. R语言plotly可视化:plotly可视化互相重叠的归一化直方图并在直方图中添加密度曲线kde、设置不同的直方图使用不同的分箱大小(bin size)、在直方图的边缘添加边缘轴须图