编译型语言和解释型语言的区别
使用编译器将自身等效转换成机器语言的高级语言(必须提前将所有源代码一次性转换成二进制指令,也就是生成一个可执行程序(Windows 下的 .exe),比如C语言、C++、Golang、Pascal(Delphi)、汇编等),这种编程语言称为编译型语言,使用的转换工具称为编译器。
而使用解释器将自身转换成机器语言的高级语言(可以一边执行一边转换,需要哪些源代码就转换哪些源代码,不会生成可执行程序,比如 Python
、JavaScript、PHP、Shell、MATLAB 等),这种编程语言称为解释型语言,使用的转换工具称为解释器。
总结如下:
类型 | 原理 | 优点 | 缺点 |
---|---|---|---|
编译型语言 | 通过专门的编译器,将所有源代码一次性转换成特定平台(Windows、Linux 等)执行的机器码(以可执行文件的形式存在)。 | 编译一次后,脱离了编译器也可以运行,并且运行效率高。 | 可移植性差,不够灵活。 |
解释型语言 | 由专门的解释器,根据需要将部分源代码临时转换成特定平台的机器码。 | 跨平台性好,通过不同的解释器,将相同的源代码解释成不同平台下的机器码。 | 一边执行一边转换,效率很低。 |
Python的优缺点
优点
- 语法简单
- Python 是开源的
- Python 是免费的
- Python 是高级语言
- Python 是解释型语言,能跨平台
- Python 是面向对象的编程语言
- Python 功能强大(模块众多)
- Python 可扩展性强
缺点
- 运行速度慢 (解释性语言特点)
- 代码加密困难
Python的应用领域
- Web应用开发
- 自动化运维 (优于普通的 shell 脚本)
- 人工智能领域
- 网路爬虫
- 科学计算
- 游戏开发
- 深度学习
- 数据分析
学习资料
廖雪峰Python教程
C语言编程网–Python教程
微软开发者中心–Python教程
Python书籍