Python简介
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python简介相关的知识,希望对你有一定的参考价值。
Python简介
Python 简介
1、Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。
2、Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
3、Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
(1)Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
(2)Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。
(3)Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
(4)Python是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
4、现在,全世界差不多有600多种编程语言,但流行的编程语言也就那么20来种。如果你听说过TIOBE排行榜,你就能知道编程语言的大致流行程度。这是最近10年最常用的10种编程语言的变化图:
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、优点
(1)易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
(2)易于阅读:Python代码定义的更清晰。
(3)易于维护:Python的成功在于它的源代码是相当容易维护的。
(4)一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
(5)互动模式:互动模式的支持,您可以从终端输入并获得结果的语言,互动的测试和调试代码片断。
(6)便携式:Python可以运行在多种硬件平台和所有平台上都具有相同的接口。
(7)可扩展:可以添加低层次的模块到Python解释器。这些模块使程序员可以添加或定制自己的工具,更有效。
(8)数据库:Python提供所有主要的商业数据库的接口。
(9)GUI编程:Python支持GUI可以创建和移植到许多系统调用。
(10)可扩展性:相比 shell 脚本,Python 提供了一个更好的结构,且支持大型程序。
2、缺点
(1)代码不能加密:如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。
注:目前的互联网时代,靠卖软件授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。
(2)速度慢:和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。
注:大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。
例如:开发一个下载MP3的网络应用程序,C程序的运行时间需要0.001秒,而Python程序的运行时间需要0.1秒,慢了100倍,但由于网络更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?
Python的应用
1、系统编程:提供API(Application Programming Interface应用程序编程接口),能方便进行系统维护和管理,Linux下标志性语言之一,是很多系统管理员理想的编程工具。
2、图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。
3、数学处理:NumPy扩展提供大量与许多标准数学库的接口。
4、文本处理:python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。
5、数据库编程:程序员可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,MySQL、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。
6、网络编程:提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。很多大规模软件开发计划例如Zope,Mnet 及BitTorrent. Google都在广泛地使用它。
7、Web编程:应用的开发语言,支持最新的XML技术。
8、多媒体应用:Python的PyOpenGL模块封装了"OpenGL应用程序编程接口",能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。
9、pymo引擎:PYMO全称为python memories off,是一款运行于Symbian S60V3,Symbian3,S60V5, Symbian3, Android系统上的AVG游戏引擎。因其基于python2.0平台开发,并且适用于创建秋之回忆(memories off)风格的AVG游戏,故命名为PYMO。
10、黑客编程:python有一个hack的库,内置了你熟悉的或不熟悉的函数,但是缺少成就感。
11、用Python写简单爬虫
首先,要通过urllib2这个Module获得对应的HTML源码。
import urllib2 #调用urllib2
url=‘http://www.baidu.com/s?wd=cloga‘ #把等号右边的网址赋值给url
html=urllib2.urlopen(url).read() #html随意取名 等号后面的动作是打开源代码页面,并阅读
print html #打印
通过上面这三句就可以将URL的源码存在content变量中,其类型为字符型。
接下来是要从这堆HTML源码中提取我们需要的内容。用Chrome查看一下对应的内容的代码(也可以用Firefox的Firebug)。
可以看到url的信息存储在span标签中,要获取其中的信息可以用正则式。
Python解释器
1、Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法的解释程序就成为了Python的解释器。
2、CPython(ClassicPython,也就是原始的Python实现,需要区别于其他实现的时候才以CPython称呼;或解作C语言实现的Python)。这是最常用的Python版本。
3、Jython(原名JPython;Java语言实现的Python,现已正式发布)。Jython可以直接调用Java的各种函数库。
4、PyPy(使用Python语言写的Python)
5、IronPython(面向.NET和ECMA CLI的Python实现)。IronPython能够直接调用.net平台的各种函数库。可以将Python程序编译成.net程序。
6、ZhPy(周蟒)(支持使用繁/简中文语句编写程序的Python语言)
以上是关于Python简介的主要内容,如果未能解决你的问题,请参考以下文章