编译过程

简介: 编译系统的运行过程源代码 --> 机器代码解释器运行程序的方法1.直接运行高级编程语言2.转换高级编程语言码到一些有效率的字节码(Bytecode),并运行这些字节码Python解释语言特点"拆解"代码:首先当用户键入代码交给Python处理的时候会先进行此法分析,例如用户...

编译系统的运行过程

源代码 --> 机器代码

  • 解释器运行程序的方法
    1.直接运行高级编程语言
    2.转换高级编程语言码到一些有效率的字节码(Bytecode),并运行这些字节码

  • Python解释语言特点

"拆解"代码:

  1. 首先当用户键入代码交给Python处理的时候会先进行此法分析,例如用户键入关键字或者当输入关键字有误时,都会被此法分析所触发,不正确的代码将不会被执行

  2. 下一步Python会进行语法分析,例如当"for i in test:"中,test后面的冒号如果写成其他符号,代码依旧不会被执行

  3. 在执行Python前,Python会生成.pyc文件,这个文件就是字节码1

  4. 如果不小心修改了字节码,Python下次重新编译该程序时会和其上次生成的字节码文件进行比较,如果不匹配则将会被修改过的字节码文件进行覆盖,以确保每次编译后字节码的准确性。


  1. 字节码在Python虚拟机程序里对应的是PyCodeObject对象。.pyc文件是字节码在磁盘上的表现形式。简单来说就是在编译代码的过程中,首先会将代码中的函数、类等对象分类处理,然后生成字节码文件。有了字节码文件,CPU可以直接识别字节码文件进行处理,接着Python就可执行了。

知识在于点滴积累
目录
相关文章
|
JavaScript Python 内存技术
分享63个广告代码JS特效,总有一款适合您
分享63个广告代码JS特效,总有一款适合您
358 2
|
数据可视化 测试技术 持续交付
自动化测试神器:Python之Pytest库入门使用
自动化测试神器:Python之Pytest库入门使用
452 4
|
监控
计算机网络的拓扑结构
计算机网络的拓扑结构。
593 0
|
10月前
|
JSON 监控 安全
JSONP 被劫持后会对用户造成哪些危害?
JSONP 被劫持后可能对用户造成严重的危害,涉及信息安全、财产安全和隐私保护等多个方面。因此,在使用 JSONP 进行跨域数据交互时,必须采取有效的安全措施来防止劫持事件的发生。
255 7
|
区块链
max code size exceeded
max code size exceeded
150 6
|
前端开发 JavaScript 关系型数据库
微搭低代码从入门到精通02数据源的介绍
微搭低代码从入门到精通02数据源的介绍
|
存储
RAID与LVM
RAID与LVM
495 1
|
SQL Java 数据库连接
Mybatis Plus字段为空值时未更新解决方案
Mybatis Plus字段为空值时未更新解决方案
1283 1
|
移动开发 JavaScript 前端开发
javascript监听浏览器离开、进入行为
javascript监听浏览器离开、进入行为
451 0