Python介绍
创始人:Guido van Rossum 荷兰·阿姆斯特丹
主要应运领域:
- 云计算:OpenStack
- WEB 开发:拥有众多的WEB框架,例如:Django
- 科学运算、人工智能:典型库Numpy、SciPy、Matplotlib、Enthought、librarys、pandas
- 系统运维
- 金融:尤其擅长擅长策略回测,生产效率远高于C、C++、java
- 图形GUI:PyQT、WxPythoon、TkInter
1 Python语言
-弱类解释
1.1 编程语言分分类
- 编译型和解释型
- 静态语言和动态语言
- 强类型定义语言和弱类型定义语言
1.2 “编译”and“解释”
编译器:将源程序的每一条语句编译成机器语言,并且保存成二进制的文件。
(1)优点:预编译的过程会对代码进行优化。因为编译只做了一次,运行时不需要编译,所以编译型的语言程序执行效率很高。并且可以脱离环境独立运行。
(2)缺点:编译之后如果需要修改就必须将整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间的移植旧货出现问题,要根据运行在不同操作环境编译不同的可执行文件。
解释器:只有在执行程序时才会一条一条解释成机器语言来执行。(多为脚本语言)
(1)优点:具有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码可以直接修改,快速部署,不用停机维护。
(2)缺点:每次运行的时候都要解释一遍,性能上不如编译语言。
2 Python的优缺点
- 任何一门语言都不是完美的
2.1 优点
1. "优雅" 、“明确”、“简单”
2. 开发效率特别高。具有强大的第三方库,降低了开发周期。
3. 高级语言。
4. 可移植性 —— 如果避免了使用依赖系统的特性,在不同平台上工作可以工作。
5. 可扩展性 —— 如果需要一段代码算法不公开或者希望代码运行的更快,可以将部分程序用用C或C++编写,然后在Python程序中使用它们。
6. 可嵌入性 —— 可以将Python嵌入C/C++程序,从而向程序提供脚本功能。
2.2 缺点
1.运行速度慢;
2.代码不能加密;
3. 线程不能利用多CPU问题。
3 Python解释器
当我们编写Python代码时,想要运行包含Python代码得.py文件,需要Python解释器。
- CPython
此解释器基于C语言开发,为官方发布。
- IPython
基于CPython之上的一个交互式解释器。
- PyPy
采用JIT技术,目标是执行速度,对python代码进行动态的编译(非解释)。和CPyhon具有不同点需注意。
- Jpython
运行在Java上的python解释器,可以直接把Python代码编译成Java字节码执行。
- IronPython
运行在.Net平台上的解释器,可以将代码编译成.Net的字节码。