python语言

上传人:飞*** 文档编号:4675551 上传时间:2017-08-21 格式:DOCX 页数:7 大小:28.74KB
返回 下载 相关 举报
python语言_第1页
第1页 / 共7页
python语言_第2页
第2页 / 共7页
python语言_第3页
第3页 / 共7页
python语言_第4页
第4页 / 共7页
python语言_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《python语言》由会员分享,可在线阅读,更多相关《python语言(7页珍藏版)》请在金锄头文库上搜索。

1、 Python 的未来发展本学期我学习了 python语言,我结合资料和自己的感受谈谈 python的未来发展Python, 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum于 1989年底发明,第一个公开发行版发行于 1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议 。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块很轻松地联结在一起。常见的一种应用情形是,使用 Python快速生成程序的原型(有时甚至是程序的最终界面) ,然后对其中有特别要求的部

2、分,用更合适的语言改写,比如 3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C+重写,而后封装为 Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。Python在设计上坚持了清晰划一的风格,这使得 Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。设计者开发时总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就好了。这在由 Tim Peters写的 Python 格言(称为 The Zen of Python)里面表述为:There should be one- and preferabl

3、y only one -obvious way to do it. 这正好和 Perl语言(另一种功能类似的高级动态语言)的中心思想 TMTOWTDI(Theres More Than One Way To Do It)完全相反。Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。其中很重要的一项就是 Python的缩进规则。一个和其他大多数语言(如 C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而 C语言是用一对花括号来明确的定出模块的边界的,与字符的位置毫无关系) 。这一点曾经引起过争议。因为自从

4、C这类的语言诞生后,语言的语法含义与字符的排列方式分离开来,曾经被认为是一种程序语言的进步。不过不可否认的是,通过强制程序员们缩进(包括 if,for 和函数定义等所有需要使用模块的地方) ,Python 确实使得程序更加清晰和美观。Python的设计哲学是“优雅” 、 “明确” 、 “简单” 。因此,Perl 语言中“总是有多种方法来做同一件事”的理念在 Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事” 。在设计 Python语言时,如果面临多种选择,Python 开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由

5、于这种设计观念的差异,Python源代码通常被认为比 Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为 Python格言。在 Python解释器内运行 import this可以获得完整的列表。Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到 Python内。所以很多人认为 Python很慢。不过,根据二八定律,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python 设计师倾向于使用 JIT技术,或者用使用 C/C+语言改写这部分程序。可用的 JIT技术是 PyPy。Python是完全面向对象的语言

6、。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于 Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了 Haskell和 Standard ML中久经考验的函数式程序设计工具。虽然 Python可能被粗略地分类为“脚本语言” (script language) ,但实际上一些大规模软件开发计划例如 Zope、Mnet 及 BitTorrent,Google 也广泛地使用它。Python 的支持者较喜欢称它为一种高

7、级动态编程语言,原因是“脚本语言”泛指仅作简单程序设计任务的语言,如 shellscript、VBScript 等只能处理简单任务的编程语言,并不能与 Python相提并论。Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的 API和工具,以便程序员能够轻松地使用 C语言、C+、Cython 来编写扩充模块。Python 编译器本身也可以被集成到其它需要脚本语言的程序内。因此,很多人还把 Python作为一种“胶水语言” (glue language)使用。使用 Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如 G

8、oogle Engine使用 C+编写性能要求极高的部分,然后用 Python或 Java/Go调用相应的模块。 Python 技术手册的作者马特利(Alex Martelli)说:“这很难讲,不过, 2004 年,Python 已在Google 内部使用,Google 召募许多 Python 高手,但在这之前就已决定使用Python,他们的目的是 Python where we can, C+ where we must,在操控硬件的场合使用 C+,在快速开发时候使用 Python。 ”自从 20世纪 90年代初 Python语言诞生至今,它逐渐被广泛应用于处理系统管理任务和 Web编程。P

9、ython的创始人为 Guido van Rossum。1989 年圣诞节期间,在阿姆斯特丹,Guido 为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为 ABC 语言的一种继承。之所以选中 Python(大蟒蛇的意思)作为程序的名字,是因为他是一个叫 Monty Python的喜剧团体的爱好者。ABC是由 Guido参加设计的一种教学语言。就 Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是 ABC语言并没有成功,究其原因,Guido 认为是非开放造成的。Guido 决心在 Python 中避免这一错误。同时,他还想实现在 ABC 中闪现过但未曾实

10、现的东西。就这样,Python 在 Guido手中诞生了。可以说,Python 是从 ABC发展起来,主要受到了 Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了 Unix shell和 C的习惯。Python 已经成为最受欢迎的程序设计语言之一。2011 年 1月,它被 TIOBE编程语言排行榜评为 2010年度语言。自从 2004年以后,python 的使用率是呈线性增长 。由于 Python语言的简洁、易读以及可扩展性,在国外用 Python做科学计算的研究机构日益增多,一些知名大学已经采用 Python教授程序设计课程。例如卡耐基梅隆大学的编程基础、

11、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了 Python的调用接口,例如著名的计算机视觉库 OpenCV、三维可视化库 VTK、医学图像处理库 ITK。而 Python专用的科学计算扩展库就更多了,例如如下 3个十分经典的科学计算扩展库:NumPy、SciPy 和 matplotlib,它们分别为 Python提供了快速数组处理、数值运算以及绘图功能。因此 Python语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。说起科学计算,首先会被提到的可能是 MATLAB。然而除了 MA

12、TLAB的一些专业性很强的工具箱还无法替代之外,MATLAB 的大部分常用功能都可以在Python世界中找到相应的扩展库。和 MATLAB相比,用 Python做科学计算有如下优点:首先,MATLAB 是一款商用软件,并且价格不菲。而 Python完全免费,众多开源的科学计算库都提供了 Python的调用接口。用户可以在任何计算机上免费安装 Python及其绝大多数扩展库。其次,与 MATLAB相比,Python 是一门更易学、更严谨的程序设计语言。它能让用户编写出更易读、易维护的代码。最后,MATLAB 主要专注于工程和科学计算。然而即使在计算领域,也经常会遇到文件管理、界面设计、网络通信等

13、各种需求。而 Python有着丰富的扩展库,可以轻易完成各种高级任务,开发者可以用 Python实现完整应用程序所需的各种功能。Python 优势的最大有点就是比其他语言更简单易学,功能强大的解释型编程语言,它有简洁明了的语法,高效率的高层数据结构,能够简单而有效地实现面向对象编程。 如果你仅仅认为用 Python优势只能写写“Hello World”,那你就大错特错了。 Python可以被应用到网络开发、GUI 开发、图形开发、Web 开发、游戏开发、手机开发、数据库开发等众多领域。网络开发方面,Python 提供了大量可用的网络编程模块,涉及到Socket、EMail、FTP 等等;众所周

14、知的豆瓣网,就是使用了专门用于 Python的网络开发框架Twisted;此外,Python 还支持 Jabber等等。GUI开发方面,既有 Python标准 GUI库TKinter,又有很多强大的第三方 GUI库,例如 wxPython。 Web 开发方面,Python 更显强大。应用服务器,有 zope;CMS 系统,有 plone(基于 zope) 。游戏开发方面,Python 也有举足轻重的地位。很多网络游戏脚本,例如账号注册系统、物品交换系统、场地转换系统和攻击防御系统,都是用 Python写的,与 C+相比,Python 更加轻便。IDLE 是 python创初人 Guido va

15、n Rossum使用 python and Tkinter来创建的一个集成开发环境。DrPython 是一个高可配置的程序开发环境,用 Python语言开发,可跨平台使用。Visual Python.Visual Python 是一个 Visual Studio .NET中的一个高效强大的 Python插件!Python 是一种不但成熟而且功能也十分强大的面向对象程序设计语言。尽管 Python有着这样或者那样的优点。但是它仍然面对着这样的一种现实:真正了解 Python的人给予了它很高的评价!Python - ChinaU.Python的优势以及 Python库,python 的优点: 快速

16、开发(唯一能和 python比开发效率的语言只有 rudy) 。跨平台(由于 python的开源,他比 java更能体现一次编写到处运行,解释性,构架选择太多(GUI 构架方面 主要的就有 wxPython, tkInter, PyGtk, PyQt 。Web构架方面 Zope, Django,ModPython for Apache,Karrigell ,Quixote 都各有所长。Python 与 Ruby比较针对于 python的网络编程,有一本很好的书:python 网络编程基础这本书全面介绍了使用 Python语言进行网络编程的基础知识。主要内容包括网络基础知识、高级网络操作、Web Services、解析 HTML和 XHTML、XML、E-mail 服务、FTP、使用 Python操作数据库、SSL、几种服务器端框架(包括 Socket服务器、SimpleXMLRPCServer、CGI 和 mod_python) 。以及多任

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号