Python简介
机器语言:
直接用二进制指令去编写程序,即010100这种方式
优点:执行效率极高
缺点:开发效率低,对开发人员要求高
汇编语言:
用英文标签取代二进制指令去编写程序
优点:开发效率相对而言高于机器语言
缺点:执行效率不如机器语言高
高级语言:
直接用人懂的语言去编写程序
高级语言将许多相关的机器指令合成为单条指令、使用堆栈、寄存器等、简化了程序中的指令、CC++,JAVA,PHP,Python,GO,C# 等都属于高级语言
注意:高级语言之前的区别在于转换二进制的方式不同
解释型和编译型语言
1、语言编译型:类似于谷歌翻译
- 将需要执行的程序代码编译成二进制(编译速度慢),会生成一个新的文件,文件中保存的是二进制数据,随后交给系统运行,如果代码做了修改,就需要重新编译生成二进制文件。
- 程序执行效率高,依赖编译器,跨平台性差些,例如:C、C++、GO等
2、语言解释型:类似于同声传译
- 执行方式类似于我们日常生活中的"同声翻译",应用程序源代码一边由相应语言的解释器"翻译"成目标代码,边执行边翻译。
- 应用程序不能脱离解释器独立运行
- 程序执行效率比较低,支持跨平台,代码灵活改动,例如:Python、Java、PHP、Ruby等。
Python概述
Guido van Rossum
是Python的创始人,它创造了一种C和shell之间,功能全面,易学易用,可扩展的语言,而Python是由C语言开发的。
Python版本:
Pyhon 2.0 -- 2001
Python 3.0 -- 2008
Python 3.2 -- 2011
Python 3.5 -- 2015
Python 3.6 -- 2016
Python解释器
Python解释器本身也可以看作是个程序
解释器类型:
1.
CPython
,基于C语言开发的,在命令行下运行python就是驱动CPyhon解释器,也是当今被最广泛使用的Python解释器、
2.IPyhon
,是一种交互式解释器,IPython只是在交互方式上有所增强,但是执行Python代码功能和CPython是完全一样的(例如国产浏览器,实质调用的是IE内核)。
3.PyPy
,基于Pyhon开发,执行速度快,采用JIT技术,对Pyhon代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度
较大部分Python代码都可以在PyPy中运行,但是PyPy和CPython有一些不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。
4.Jython
,基于JAVA开发,可以直接把Python代码编译成Java字节码执行。
小结:Python的解释器很多,但是常用的还是CPython
Python应用领域
1、云计算: 云计算最火的语言, 典型应用OpenStack
2、WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
3、科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
4、系统运维: 运维人员必备语言
5、金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
6、图形GUI: PyQT, WxPython,TkInter
Python在一些公司的应用:
- 谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发
- CIA: 美国中情局网站就是用Python开发的
- NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算
- YouTube:世界上最大的视频网站YouTube就是用Python开发的
- Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载
- Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发
- Facebook:大量的基础库均通过Python实现的
- Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的
- 豆瓣: 公司几乎所有的业务均是通过Python开发的
- 知乎: 国内最大的问答社区,通过Python开发(国外Quora)
- 春雨医生:国内知名的在线医疗网站是用Python开发的
除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。