哈喽,大家好,五一快乐呀,都去哪里旅游了呢?再游玩之余也花点时间来学习学习,让自己更强哟。这期就给大家分享的是Python程序执行的过程学习。

之前已经给大家介绍了Python语言的简介、Python环境的安装、IDE的选择与安装,本期开始正式进入Python语言的学习,首先开始学习的是Python语言的执行过程,了解执行方式。

程序执行的两种方式

  1. 编译执行,指源程序先经过编译器编译成机器语言,也即是机器直接可以执行的可执行文件,然后再执行。即先编译在执行。整个编译之后,多次运行,跨平台都行,运行效率高。
    编译型语言有: C、C++、Java等
    **优点:**编译器一般会预编译对源代码进行优化。因为只编译一次,运行时不再编译,所以编译型语言执行效率高,可以脱离语言环境独立运行。
    缺点: 编译之后要修改代码就会整个模块重新编译,编译的时候根据环境生成机器码,不同操作系统之间移植就会出问题,需要根据运行系统编译不同的可执行文件。
  2. 解释执行,指源程序边解释边执行,也即是直接执行。每次执行都要一句一句的翻译,执行效率低。
    解释型语言有:Python、PHP、JavaScript等
    优点:平台兼容性好,在任何环境中都可以运行,前提是安装了解释器,也可以理解为虚拟机。灵活,对代码的修改随时进行,部署较快,不用停机维护。
    缺点:每次运行都要重新解释一遍,运行效率低。

不同执行方式图解

如下图展示了不同类型语言的执行过程。

Python程序的执行过程_python


编译型语言不能跨平台体现在两个方面:

1、可执行程序不能跨平台,不同操作系统可执行文件的后缀名都不一致,说明内部结构也不一样,批次之间不兼容;例如Windows下面的exe程序不能再Linux平台下运行。

2、源代码也是不能跨平台的,不同平台支持的函数、类型、变量等可能不同,基于某个平台编写的源程序不能在另一个平台下面编译执行。

解释型语言就不一样了
解释型语言每次执行程序都需要一边转换一边执行,用到哪些源代码就将哪些源代码转化成机器码,每次执行程序如果要实现不同功能,那么需要转换的源代码也不一样。由于每次执行都需要执行源代码,因此,它的执行效率就很低,并且解释型语言无法脱离开发环境。