Python被誉为全世界高效的编程语言同时也被称作是“胶水语言”那它为何能如此受欢迎下面我们就来说说Python入门学习的必备11个知识点也就是它为何能够如此受欢迎的原因.Python 简介Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设计具有很强的可读性相比其他语言经常使用英文关键字其他语言的一些标点符号它具有比其他语言更有特色语法结构。Python 是一种解释型语言 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python 是交互式语言 这意味着您可以在一个Python提示符直接互动执行写你的程序。Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。Python 是初学者的语言Python 对初级程序员而言是一种伟大的语言它支持广泛的应用程序开发从简单的文字处理到 WWW 浏览器再到游戏。Python 发展历史Python 是由 Guido van Rossum 在八十年代末和九十年代初在荷兰国家数学和计算机科学研究所设计出来的。Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等。像 Perl 语言一样Python 源代码同样遵循 GPL(GNU General Public License)协议。现在 Python 是由一个核心开发团队在维护Guido van Rossum 仍然占据着至关重要的作用指导其进展。Python 特点1.易于学习Python有相对较少的关键字结构简单和一个明确定义的语法学习起来更加简单。2.易于阅读Python代码定义的更清晰。3.易于维护Python的成功在于它的源代码是相当容易维护的。4.一个广泛的标准库Python的最大的优势之一是丰富的库跨平台的在UNIXWindows和Macintosh兼容很好。5.互动模式互动模式的支持您可以从终端输入执行代码并获得结果的语言互动的测试和调试代码片断。6.可移植基于其开放源代码的特性Python已经被移植也就是使其工作到许多平台。7.可扩展如果你需要一段运行很快的关键代码或者是想要编写一些不愿开放的算法你可以使用C或C完成那部分程序然后从你的Python程序中调用。8.数据库Python提供所有主要的商业数据库的接口。9.GUI编程Python支持GUI可以创建和移植到许多系统调用。10.可嵌入: 你可以将Python嵌入到C/C程序让你的程序的用户获得脚本化的能力。1、Python适用于哪些应用场景这个没有固定答案很多人都说Python不适合开发GUI的程序但Python自己的IDE——IDEL和第三方的IDE——Eric就是Python写的。目前看到的更多的人是拿来写Web使用如Django、web.py框架没记错Flask也是。也有一个情况用的比较多用Python当胶水与各种语言结合共同完成某软件功能注意观察也许你会发现在安装一些软件的时候会有Python的身影。我个人还拿Python模拟过端口转发和DNS服务等所以真的是要看真么用而不是能怎么用。另外大数据分析Python也是比较适合的从载入到分析再到保存结果等Python有一整套的模块应对。2、Python能够胜任大数据吗Python很适合做大数据相关的分析内置的C编译的模块能应对常见的操作个别极端的算法建议用C重写相关模块。Python本身的特点更多的是高效率的开发和简单的维护速度交给C去吧更多的问题其实出自写代码的人没有更好的使用而不是效率不够高。比如排序本来Python有非常高效的内置C编译的模块却非要自己写算法这样的结果不慢都是奇怪的。另外还要看需求是CPU密集型还是IO密集型如果是CPU密集型建议这部分操作由C实现IO密集型的效率不会因为Python而有多少改变。C的效率是高但框架搭起来也费劲所以还是结合着来吧也因此Python被称为胶水语言。3、Python是否可以完全代替Shell完全可以Shell的功能Python均可实现而且代码量更少、结构更优、可阅读性更好而Python可实现的功能Shell却不一定能如运维中会用到的用于网络通信的Socket模块、用于WEB的Django框架、用于性能采集的psutil模块等而且Shell对操作系统的命令依赖性较强Python可在更大程度上规避。在一个Shell的IDE是个很大的问题虽然Python的原生IDE不怎么样但第三方的IDE还是功能十分强大的虽然不能和微软的Virtual Studio相媲美但也是能完全满足Python的开发需求的。再说下Python的效率问题Python支持多进程、多线程以及协程比线程更小一级程序并发度是在Shell之上的。Python的核心模块基本都是用C实现的因此效率更高。如有必要也可能将需要用Python实现的Python模块用C重写以提高效率当然也可以直接用C Python一个直接完全用C实现的Python解释器。4、Python是否可以访问常见的数据库可以Python可以访问常见的各种数据库如Oracle、MySQL、Vertica、SQLServer等加载相应的模块即可模块列表如下Oraclecx_OracleMySQLMySQLdb5、Python开发是面向过程、函数还是对象Python虽然是解释型语言但从设计之初就已经是一门面向对象的语言对于Python来说一切皆为对象。正因为如此在Python中创建一个类和对象是很容易的当然如果习惯面向过程或者函数的写法也是可以的Python并不做硬性的限制。Python的面向对象特征如下封装面向对象程序设计中的术语对象Object基本上可以看做数据特性以及由一系列可以存取、操作这些数据的方法所组成的集合。传统意义上的“程序 数据结构算法”被封装”掩盖“并简化为“程序对象消息”。对象是类的实例类的抽象则需要经过封装。封装可以让调用者不用关心对象是如何构建的而直接进行使用。继承类继承继承给人的直接感觉是这是一种复用代码的行为。继承可以理解为它是以普通的类为基础建立专门的类对象子类和它继承的父类是IS-A的关系。多重继承不同于C#Python是支持多重类继承的C#可继承自多个Interface但最多继承自一个类。多重继承机制有时很好用但是它容易让事情变得复杂。多态多态意味着可以对不同的对象使用同样的操作但它们可能会以多种形态呈现出结果。在Python中任何不知道对象到底是什么类型但又需要对象做点什么的时候都会用到多态。方法是多态的运算符也是多态的。