Python —编译性语言和解释性语言区别
编译器与解释器
简单地说,编译器是一个程序,可以阅读以某一种语言(源语言)编写的程序,并把该程序翻译成一个等价的、用另一种语言(目标语言)编写的程序。
如果目标程序是一个可执行的机器语言程序,那么它就可以被用户调用,处理输入并产生输出
而解释器是一种语言处理器,从用户的角度看,解释器直接利用用户提供的输入执行源程序中的指定的操作
1、编译性语言
(1)编译性语言使用的是编译器,提前将所有源代码一次性转换成二进制指令,生成一个可执行程序,一次编译,无限次运行,编译性语言可以脱离开发环境运行,执行效率高,但对平台依赖性强,不能在不同操作系统之间随意切换。
(2)编译性语言代表:C、C++
(3)由于编译性语言我们下载到的是可执行文件,源代码可被作者保留,所以编译性语言一般是闭源的。
2、解释性语言
(1)解释性语言使用的是解释器,可以一边对源代码进行执行一边进行转换,不生成一个可执行程序,一次编写,到处运行。执行效率低于编译性语言,无法脱离开发环境,对平台依赖性低。
(2)解释性语言代表:Python、JavaScript、Matlab
(3)解释性语言的运行始终需要源代码,所以一般为开源。