一、 py_compile 

py_compile在python2和python 3中都可用的标准库,可以直接使用。使用方法如下:

1) 在控制台或者终端直接使用命令编译

以 hello.py 为例,源代码如下:

def hello():print("Hello, World!")

编译hello.py的命令是:python -m py_compile hello.py

编译成功之后,在当前路径的 __pycache__ 文件夹下,生成了hello.cpython-37.pyc,

2) 写python代码编译,如下:

import py_compilepy_compile.compile('hello.py')

py_compile.compile 函数也可以跟多个文件的文件名。

二、compileall

py_compile 虽然可以编译一个或者多个文件,但是,如果要编译路径,就不方便了。编译整个路径可以使用compileall,compileall也是python的标准模块,可以直接使用。

1)命令行编译

可以使用   python -m compileall .  编译当前路径。执行这个命令时,会逐步递归把所有的子目录的python代码都编译。

compileall 也可以只编译某一个python文件,例如:

python -m compileall hello.py

2) 在代码中使用函数编译,示例代码如下

import compileallcompileall.compile_dir('.')
compileall.compile_file('hello.py')

如何编译python源代码相关推荐

  1. python源代码不需要编译成什么-编译 Python 源代码

    为什么可以/需要编译 通常在 Windows 下安装软件,只需要下载可执行文件,一直下一步就可以完成安装.而 Linux 下,你可以获取软件的源代码,自行编译生成可执行文件进行安装.用源代码有什么好处 ...

  2. python代码封装加密_静态编译python源代码,使用Nuitka加密你的py源码

    Nuitka,100%兼容标准python2/python3,静态编译你的python程序 1. 概述 Nuitka(nuitka.net)可以将python代码转换为C++,然后编译为可执行文件,其 ...

  3. python源码不需要编译成二进制代码_编译 Python 源代码

    为什么可以/需要编译 通常在 Windows 下安装软件,只需要下载可执行文件,一直下一步就可以完成安装.而 Linux 下,你可以获取软件的源代码,自行编译生成可执行文件进行安装.用源代码有什么好处 ...

  4. python在线编译-在线编译python

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. 尝试通过源码自己编译 python,使用的系统是 ubuntu14.04 ...

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

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

  6. python源代码程序编译后的文件扩展名是什么_Python源代码程序编译后的文件扩展名为_________。...

    Python源代码程序编译后的文件扩展名为_________. 答:pyc 某合同价格条款规定如下:"每打FOB上海15欧元,总值4500欧元".则此时欧元为 答:计价货币 生态文 ...

  7. python程序文件的扩展名称-Python源代码程序编译后的文件扩展名为( )。_学小易找答案...

    [单选题]9.药物与血浆蛋白结合后( ). [填空题]根据ISO标准,当刀具中心轨迹在程序轨迹前进方向左边时称为左刀补,用( )指令表示! [判断题]进口的农产品必须按照国家规定的农产品质量安全标准进 ...

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

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

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

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

  10. python自动源码_谷歌推出Tangent开源库,在Python源代码上做自动微分

    原标题:谷歌推出Tangent开源库,在Python源代码上做自动微分 李林 编译自 Google Research Blog 谷歌今天推出了一个新的开源Python自动微分库:Tangent. 和现 ...

最新文章

  1. 2017-2021年中国大数据产业预测分析及全球市场规模预测
  2. Ubuntu升级之后The disk drive for / is not ready yet or not present的解决方法
  3. CCNA-第十四篇-NAT-下+链路聚合(LACP)+DHCP
  4. valgrind检测libevent内存泄露
  5. scala 类中的对象是类_Scala中的类和对象
  6. 志高空调,到了最危险的时候!
  7. Linux操作Oracle(14)——Oracle数据库 使用VMware虚拟网卡 配置 TnsListener 解决 无法启动的问题
  8. sql max同一行_SQL 打印矩阵(三)
  9. 论文阅读-可变形卷积网络:Deformable Convolutional Networks
  10. 网站目录提交-SEO搜索引擎优化
  11. linux文件映射mmap
  12. [Spring实战系列](2)Maven创建Spring-HelloWorld项目
  13. 时域、频域与时域分析、频域分析简单理解
  14. idea企业破解版安装
  15. office出现0x4004F00C错误
  16. win7系统怎样搭建电影服务器,win7系统免费看电影的操作方法
  17. 基于眨眼状态的在线疲劳检测系统(Matlab-GUI设计)
  18. set的三种遍历方式-----不能用for循环遍历(无序)
  19. 电子学会2022年6月青少年软件编程(图形化)等级考试试卷(二级)答案解析
  20. cmp test指令 条件转移 FLAGS寄存器 机理探究

热门文章

  1. 惠普打印机双击之后没有扫描_安装hp laserjet m1005 mfp打印机驱动后,双击我的电脑里怎么没有扫描图标呢??...
  2. 抽象代数的人间烟火——北航李尚志
  3. Windows系统没有目标位置的快捷方式及其目标文件获取
  4. java gui即时聊天工具
  5. 计算机操作系统第四版知识点总结(详细版一)
  6. Jmeter下载安装详细步骤(2021)
  7. 【剑指Offer速刷与技巧笔记】剑指Offer重点面试刷题
  8. 常用的Mysql数据库操作语句大全
  9. 霍夫变换(Hough Transformation)基本思想及MATLAB相关函数
  10. Android7.0的xposed框架,Android 7.x 安装Xposed框架