认识python之什么是python
<div style="color: black; text-align: left; margin-bottom: 10px;">
<h1 style="color: black; text-align: left; margin-bottom: 10px;"><strong style="color: blue;">1. Python发展历史</strong></h1>起源Python的作者,Guido von Rossum,荷兰人。1982年,Guido从阿姆斯特丹大学<span style="color: black;">得到</span>了数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。用他的话说,尽管<span style="color: black;">持有</span>数学和计算机双料资质,他总趋向于做计算机<span style="color: black;">关联</span>的工作,并热衷于做任何和编程<span style="color: black;">关联</span>的活儿。在那个时候,Guido接触并<span style="color: black;">运用</span>过诸如Pascal、C、Fortran等语言。这些语言的基本设计原则是让<span style="color: black;">设备</span>能更快运行。在80年代,虽然IBM和苹果<span style="color: black;">已然</span>掀起了个人电脑浪潮,但这些个人电脑的配置很低。<span style="color: black;">例如</span><span style="color: black;">初期</span>的Macintosh,<span style="color: black;">仅有</span>8MHz的CPU主频和128KB的RAM,一个大的数组就能占满内存。所有的编译器的核心是做优化,以便让程序能够运行。为了增进效率,语言<span style="color: black;">亦</span>迫使程序员像计算机<span style="color: black;">同样</span>思考,以便能写出更符合<span style="color: black;">设备</span>口味的程序。在那个时代,程序员恨不得用手榨取计算机每一寸的能力。有人<span style="color: black;">乃至</span>认为C语言的指针是在浪费内存。至于动态类型,内存自动管理,面向对象…… 别想了,那会让你的电脑陷入瘫痪。这种编程方式让Guido感到苦恼。Guido<span style="color: black;">晓得</span><span style="color: black;">怎样</span>用C语言写出一个功能,但<span style="color: black;">全部</span>编写过程<span style="color: black;">必须</span>耗费<span style="color: black;">海量</span>的时间,即使他<span style="color: black;">已然</span>准确的<span style="color: black;">晓得</span>了<span style="color: black;">怎样</span>实现。他的另一个<span style="color: black;">选取</span>是shell。Bourne Shell<span style="color: black;">做为</span>UNIX系统的解释器<span style="color: black;">已然</span><span style="color: black;">长时间</span>存在。UNIX的管理员们常常用shell去写<span style="color: black;">有些</span>简单的脚本,以进行<span style="color: black;">有些</span>系统<span style="color: black;">守护</span>的工作,<span style="color: black;">例如</span><span style="color: black;">定时</span>备份、文件系统管理等等。shell<span style="color: black;">能够</span>像胶水<span style="color: black;">同样</span>,将UNIX下的许多功能连接在<span style="color: black;">一块</span>。许多C语言下上百行的程序,在shell下只用几行就<span style="color: black;">能够</span>完成。然而,shell的本质是调用命令。它并不是一个真正的语言。<span style="color: black;">例如</span>说,shell<span style="color: black;">无</span>数值型的数据类型,加法运算都很<span style="color: black;">繁杂</span>。总之,shell<span style="color: black;">不可</span>全面的调动计算机的功能。Guido<span style="color: black;">期盼</span>有一种语言,这种语言能够像C语言那样,能够全面调用计算机的功能接口,又<span style="color: black;">能够</span>像shell那样,<span style="color: black;">能够</span><span style="color: black;">容易</span>的编程。ABC语言让Guido看到<span style="color: black;">期盼</span>。ABC<span style="color: black;">是由于</span>荷兰的数学和计算机<span style="color: black;">科研</span>所<span style="color: black;">研发</span>的。Guido在该<span style="color: black;">科研</span>所工作,并参与到ABC语言的<span style="color: black;">研发</span>。ABC语言以教学为目的。与当时的大部分语言<span style="color: black;">区别</span>,ABC语言的<span style="color: black;">目的</span>是“让用户感觉更好”。ABC语言<span style="color: black;">期盼</span>让语言变得容易阅读,容易<span style="color: black;">运用</span>,容易记忆,容易学习,并以此来激发人们学习编程的兴趣。<span style="color: black;">例如</span>下面是一段来自Wikipedia的ABC程序,这个程序用于统计文本中<span style="color: black;">显现</span>的词的总数: HOW TO RETURN words document:
PUT {} IN collection
FOR line IN document:
FOR word IN split line:
IF word not.in collection:
INSERT word IN collection
RETURN collection
HOW TO用于定义一个函数。一个Python程序员应该很容易理解这段程序。ABC语言<span style="color: black;">运用</span>冒号和缩进来<span style="color: black;">暗示</span>程序块。行 尾<span style="color: black;">无</span>分号。for和if结构中<span style="color: black;">亦</span><span style="color: black;">无</span>括号() 。赋值采用的是PUT,而不是更<span style="color: black;">平常</span>的等号。这些改动让ABC程序读起来像一段文字。 尽管<span style="color: black;">已然</span>具备了良好的可读性和易用性,ABC语言<span style="color: black;">最后</span><span style="color: black;">无</span>流行起来。在当时,ABC语言编译器<span style="color: black;">必须</span>比较高配置的电脑<span style="color: black;">才可</span>运行。而这些电脑的<span style="color: black;">运用</span>者<span style="color: black;">一般</span>精通计算机,<span style="color: black;">她们</span><span style="color: black;">更加多</span><span style="color: black;">思虑</span>程序的效率,而非它的学习难度。除了硬件上的困难外,ABC语言的设计<span style="color: black;">亦</span>存在<span style="color: black;">有些</span>致命的问题: 可拓展性差。ABC语言不是模块化语言。<span style="color: black;">倘若</span>想在ABC语言中<span style="color: black;">增多</span>功能,<span style="color: black;">例如</span>对图形化的支持,就<span style="color: black;">必要</span>改动<span style="color: black;">非常多</span><span style="color: black;">地区</span>。 <span style="color: black;">不可</span>直接进行IO。ABC语言<span style="color: black;">不可</span>直接操作文件系统。尽管你<span style="color: black;">能够</span><span style="color: black;">经过</span>诸如文本流的方式导入数据,但ABC<span style="color: black;">没法</span>直接读写文 件。输入输出的困难<span style="color: black;">针对</span>计算机语言<span style="color: black;">来讲</span>是致命的。你能想像一个打不开车门的跑车么? 过度革新。ABC用自然语言的方式来表达程序的<span style="color: black;">道理</span>,<span style="color: black;">例如</span>上面程序中的HOW TO 。然而<span style="color: black;">针对</span>程序员<span style="color: black;">来讲</span>,<span style="color: black;">她们</span>更习惯 用function<span style="color: black;">或</span>define来定义一个函数。<span style="color: black;">一样</span>,程序员更习惯用等号来分配变量。尽管ABC语言很<span style="color: black;">尤其</span>,但学习难度 <span style="color: black;">亦</span>很大。 传播困难。ABC编译器很大,<span style="color: black;">必要</span>被<span style="color: black;">保留</span>在磁带上。当时Guido在<span style="color: black;">拜访</span>的时候,就<span style="color: black;">必要</span>有一个大磁带来给别人安装ABC编 译器。 <span style="color: black;">这般</span>,ABC语言就很难快速传播。 1989年,为了打发圣诞节假期,Guido<span style="color: black;">起始</span>写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Pythons Flying Circus。他<span style="color: black;">期盼</span>这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。Guido<span style="color: black;">做为</span>一个语言设计<span style="color: black;">兴趣</span>者,<span style="color: black;">已然</span>有过设计语言的尝试。这一次,<span style="color: black;">亦</span><span style="color: black;">不外</span>是一次纯粹的hacking<span style="color: black;">行径</span>。一门语言的诞生1991年,<span style="color: black;">第1</span>个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python<span style="color: black;">已然</span><span style="color: black;">拥有</span>了 :类,函数,<span style="color: black;">反常</span>处理,<span style="color: black;">包括</span>表和词典在内的核心数据类型,以及模块为<span style="color: black;">基本</span>的拓展系统。 Python语法<span style="color: black;">非常多</span>来自C,但又受到ABC语言的<span style="color: black;">剧烈</span>影响。来自ABC语言的<span style="color: black;">有些</span>规定直到今天还富有争议,<span style="color: black;">例如</span>强制缩进。 但这些语法规定让Python容易读。另一方面,Python聪明的<span style="color: black;">选取</span>服从<span style="color: black;">有些</span>惯例,<span style="color: black;">尤其</span>是C语言的惯例,<span style="color: black;">例如</span>回归等号赋值。Guido认为,<span style="color: black;">倘若</span>“常识”上确立的东西,<span style="color: black;">无</span>必要过度纠结。 Python从一<span style="color: black;">起始</span>就<span style="color: black;">尤其</span><span style="color: black;">留意</span>可拓展性。Python<span style="color: black;">能够</span>在多个层次上拓展。从高层上,你<span style="color: black;">能够</span>直接引入. py文件。在底层,你<span style="color: black;">能够</span>引用C语言的库。Python程序员<span style="color: black;">能够</span>快速的<span style="color: black;">运用</span>Python写. py文件<span style="color: black;">做为</span>拓展模块。但当性能是<span style="color: black;">思虑</span>的重要<span style="color: black;">原因</span>时,Python程序员<span style="color: black;">能够</span>深入底层,写C程序,编译为.so文件引入到Python中<span style="color: black;">运用</span>。Python就<span style="color: black;">好似</span>是<span style="color: black;">运用</span>钢构建房<span style="color: black;">同样</span>,先规定好大的框架。而程序员<span style="color: black;">能够</span><span style="color: black;">这里</span>框架下相当自由的拓展或更 改。 最初的Python完全由Guido<span style="color: black;">自己</span>开发。Python得到Guido同事的欢迎。<span style="color: black;">她们</span><span style="color: black;">快速</span>的反馈<span style="color: black;">运用</span>意见,并参与到Python的改进。Guido和<span style="color: black;">有些</span>同事<span style="color: black;">形成</span>Python的核心团队。<span style="color: black;">她们</span>将自己大部分的业余时间用于hack Python。随后,Python拓 展到<span style="color: black;">科研</span>所之外。Python将许多<span style="color: black;">设备</span>层面上的细节<span style="color: black;">隐匿</span>,交给编译器处理,并凸显出逻辑层面的编程思考。Python程 序员<span style="color: black;">能够</span>花<span style="color: black;">更加多</span>的时间用于思考程序的<span style="color: black;">规律</span>,而不是<span style="color: black;">详细</span>的实现细节。这一特征吸引了广大的程序员。Python<span style="color: black;">起始</span>流行。<div style="color: black; text-align: left; margin-bottom: 10px;"><img src="https://p3-sign.toutiaoimg.com/pgc-image/c99966f5cdd74d808454ef5de0b394a6~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1723896246&x-signature=v0TFmbJBsBom0wDunLdV%2BT6Tuvo%3D" style="width: 50%; margin-bottom: 20px;">
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">人生苦短,我用python</p>
</div>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;">时势造英雄</p>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><span style="color: black;">咱们</span>不得不暂停<span style="color: black;">咱们</span>的Python时间,转而看一看瞬息万变的计算机行业。1990年代初,个人计算机<span style="color: black;">起始</span>进入普通家庭。Intel发布了486处理器,windows发布window 3.0<span style="color: black;">起始</span>的一系列视窗系统。计算机的性能大大<span style="color: black;">加强</span>。程序员<span style="color: black;">起始</span>关注计算机的易用性,<span style="color: black;">例如</span>图形化界面。</p>
<div style="color: black; text-align: left; margin-bottom: 10px;"><img src="https://p3-sign.toutiaoimg.com/pgc-image/6a776e6a07fb46ebb615cb464dd67731~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1723896246&x-signature=Mz62u5Z7Xg1JETRkYG4gaakeA1Y%3D" style="width: 50%; margin-bottom: 20px;"></div>Windows 3.0<span style="color: black;">因为</span>计算机性能的<span style="color: black;">加强</span>,软件的世界<span style="color: black;">亦</span><span style="color: black;">起始</span>随之改变。硬件足以满足许多个人电脑的<span style="color: black;">必须</span>。硬件厂商<span style="color: black;">乃至</span><span style="color: black;">巴望</span>高需求软 件的<span style="color: black;">显现</span>,以带动硬件的更新换代。C++和Java相继流行。C++和Java<span style="color: black;">供给</span>了面向对象的编程范式,以及丰富的对象库。在牺牲了<span style="color: black;">必定</span>的性能的代价下,C++和Java大大<span style="color: black;">加强</span>了程序的产量。语言的易用性被<span style="color: black;">说到</span>一个新的高度。<span style="color: black;">咱们</span>还记得 ,ABC失败的一个重要<span style="color: black;">原由</span>是硬件的性能限制。从这方面说,Python要比ABC幸运许多。 另一个悄然<span style="color: black;">出现</span>的改变是Internet。1990年代还是个人电脑的时代,windows和Intel挟PC以令天下,盛极一时。尽管Internet为主体的信息革命尚未到来,但许多程序员以及资深计算机用户<span style="color: black;">已然</span>在频繁<span style="color: black;">运用</span>Internet进行交流,<span style="color: black;">例如</span> <span style="color: black;">运用</span>email和newsgroup。Internet让信息交流成本大大下降。一种新的软件<span style="color: black;">研发</span>模式<span style="color: black;">起始</span>流行:开源。程序员利用 业余时间进行软件<span style="color: black;">研发</span>,并开放源代码。1991年,Linus在comp.os.minix<span style="color: black;">资讯</span>组上发布了Linux内核源代码,吸引大批hacker的加入。Linux和GNU相互合作,<span style="color: black;">最后</span>构<span style="color: black;">成为了</span>一个充满活力的开源平台。 硬件性能不是瓶颈,Python又容易<span style="color: black;">运用</span>,<span style="color: black;">因此</span>许多人<span style="color: black;">起始</span>转向Python。Guido<span style="color: black;">守护</span>了一个maillist,Python用户就<span style="color: black;">经过</span>邮件进行交流。Python用户来自许多<span style="color: black;">行业</span>,有<span style="color: black;">区别</span>的背景,对Python<span style="color: black;">亦</span>有<span style="color: black;">区别</span>的需求。Python相当的开放,又容 易拓展,<span style="color: black;">因此</span>当用户不满足于现有功能,很容易对Python进行拓展或改造。随后,这些用户将改动发给Guido,并由Gu ido决定<span style="color: black;">是不是</span>将新的特征加入到Python<span style="color: black;">或</span>标准库中。<span style="color: black;">倘若</span>代码能被纳入Python<span style="color: black;">自己</span><span style="color: black;">或</span>标准库,这将<span style="color: black;">极重</span>的荣誉。<span style="color: black;">因为</span>Guido至高无上的决定权,他<span style="color: black;">因此呢</span>被<span style="color: black;">叫作</span>为“终身的仁慈独裁者”。 Python被<span style="color: black;">叫作</span>为“Battery Included”,是说它以及其标准库的功能强大。这些是<span style="color: black;">全部</span>社区的贡献。Python的<span style="color: black;">研发</span>者来自<span style="color: black;">区别</span><span style="color: black;">行业</span>,<span style="color: black;">她们</span>将<span style="color: black;">区别</span><span style="color: black;">行业</span>的优点带给Python。<span style="color: black;">例如</span>Python标准库中的正则表达是参考Perl,而lambda, map, filter, reduce等函数参考了Lisp。Python本身的<span style="color: black;">有些</span>功能以及大部分的标准库来自于社区。Python的社 区<span style="color: black;">持续</span>扩大,<span style="color: black;">从而</span><span style="color: black;">持有</span>了自己的newsgroup,网站,以及基金。从Python 2.0<span style="color: black;">起始</span>,Python<span style="color: black;">亦</span>从maillist的<span style="color: black;">研发</span>方式,转为完全开源的<span style="color: black;">研发</span>方式。社区气氛<span style="color: black;">已然</span>形成,工作被<span style="color: black;">全部</span>社区分担,Python<span style="color: black;">亦</span><span style="color: black;">得到</span>了更加高速的发展。 到今天,Python的框架<span style="color: black;">已然</span>确立。Python语言以对象为核心组织代码,支持多种编程范式,采用动态类型,自动进行内存回收。Python支持解释运行,并能调用C库进行拓展。Python有强大的标准库。<span style="color: black;">因为</span>标准库的体系<span style="color: black;">已然</span>稳定,<span style="color: black;">因此</span>Python的生态系统<span style="color: black;">起始</span>拓展到第三方包。这些包,如Django、web.py、wxpython、numpy、matplotlib、PIL,将Python升级<span style="color: black;">成为了</span>物种丰富的热带雨林。启示录Python崇尚优美、清晰、简单,是一个优秀并广泛<span style="color: black;">运用</span>的语言。Python在TIOBE排行榜中排行第八,它是Google的第三大<span style="color: black;">研发</span>语言,Dropbox的<span style="color: black;">基本</span>语言,豆瓣的服务器语言。Python的发展史<span style="color: black;">能够</span><span style="color: black;">做为</span>一个<span style="color: black;">表率</span>,带给我许多启示。 在Python的<span style="color: black;">研发</span>过程中,社区起到了重要的<span style="color: black;">功效</span>。Guido自认为自己不是全能型的程序员,<span style="color: black;">因此</span>他只负责制订框架。<span style="color: black;">倘若</span>问题太<span style="color: black;">繁杂</span>,他会<span style="color: black;">选取</span>绕过去,<span style="color: black;">亦</span><span style="color: black;">便是</span>cut the corner。这些问题<span style="color: black;">最后</span>由社区中的其他人<span style="color: black;">处理</span>。社区中的人才是<span style="color: black;">反常</span>丰富的,就连创建网站,筹集基金<span style="color: black;">这般</span>与<span style="color: black;">研发</span>稍远的事情,<span style="color: black;">亦</span>有人乐意于处理。如今的项目<span style="color: black;">研发</span>越来越<span style="color: black;">繁杂</span>,越来越庞大,合作以及开放的<span style="color: black;">心理</span><span style="color: black;">作为</span>项目<span style="color: black;">最后</span>成功的关键。 Python从其他语言中学到了<span style="color: black;">非常多</span>,无论是<span style="color: black;">已然</span>进入历史的ABC,还是依然在<span style="color: black;">运用</span>的C和Perl,以及许多<span style="color: black;">无</span>列出的其他 语言。<span style="color: black;">能够</span>说,Python的成功<span style="color: black;">表率</span>了它所有借鉴的语言的成功。<span style="color: black;">一样</span>,Ruby借鉴了Python,它的成功<span style="color: black;">亦</span><span style="color: black;">表率</span>了Python某些方面的成功。<span style="color: black;">每一个</span>语言都是混合体,都有它优秀的<span style="color: black;">地区</span>,但<span style="color: black;">亦</span>有<span style="color: black;">各样</span>各样的缺陷。<span style="color: black;">同期</span>,一个语言“好与<span style="color: black;">欠好</span>”的评 判,<span style="color: black;">常常</span>受制于平台、硬件、时代等等<span style="color: black;">外边</span><span style="color: black;">原由</span>。程序员经历过许多语言之争。其实,以开放的<span style="color: black;">心理</span>来接受各个语言,说不定哪一天,程序员<span style="color: black;">亦</span><span style="color: black;">能够</span>如Guido那样,混合出自己的语言。<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><strong style="color: blue;">关键点常识</strong></p>Python的发音与拼写Python的意思是蟒蛇,源于作者<span style="color: black;">爱好</span>的一部电视剧 (C呢?)Python的作者是Guido van Rossum(龟叔)Python是龟叔在1989年圣诞节<span style="color: black;">时期</span>,为了打发无聊的圣诞节而用C编写的一个编程语言Python正式诞生于1991年Python的解释器如今有多个语言实现,<span style="color: black;">咱们</span>常用的是CPython(官方版本的C语言实现),其他还有Jython(<span style="color: black;">能够</span>运行在Java平台)、IronPython(<span style="color: black;">能够</span>运行在.NET和Mono平台)、PyPy(Python实现的,支持JIT即时编译)Python<span style="color: black;">日前</span>有两个版本,Python2和Python3,最新版分别为2.7.12和3.5.2,现<span style="color: black;">周期</span>大部分<span style="color: black;">机构</span>用的是Python2Life is shot, you need Python. 人生苦短,我用Python。2018年 编程语言流行排行榜<div style="color: black; text-align: left; margin-bottom: 10px;"><img src="https://p3-sign.toutiaoimg.com/pgc-image/d17752f9a3f74557baa5f8c8c280dbe2~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1723896246&x-signature=Nbof7uXUe3Pm6wSyvx6S9lnHPIw%3D" style="width: 50%; margin-bottom: 20px;"></div>
<h1 style="color: black; text-align: left; margin-bottom: 10px;"><strong style="color: blue;">2. Python优缺点</strong></h1>
<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><strong style="color: blue;">优点</strong></p>简单————Python是一种<span style="color: black;">表率</span>简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语<span style="color: black;">同样</span>,尽管这个英语的<span style="color: black;">需求</span>非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于<span style="color: black;">处理</span>问题而不是去搞明白语言本身。易学————就如同你即将看到的<span style="color: black;">同样</span>,Python极其容易上手。前面<span style="color: black;">已然</span><span style="color: black;">说到</span>了,Python有极其简单的语法。免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你<span style="color: black;">能够</span>自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是<span style="color: black;">为何</span>Python如此优秀的<span style="color: black;">原由</span>之一——它<span style="color: black;">是由于</span>一群<span style="color: black;">期盼</span>看到一个更加优秀的Python的人创造并经常改进着的。高层语言————当你用Python语言编写程序的时候,你无需<span style="color: black;">思虑</span>诸如<span style="color: black;">怎样</span>管理你的程序<span style="color: black;">运用</span>的内存一类的底层细节。可移植性————<span style="color: black;">因为</span>它的开源本质,Python<span style="color: black;">已然</span>被移植在许多平台上(经过改动使它能够工作在<span style="color: black;">区别</span>平台上)。<span style="color: black;">倘若</span>你小心地避免<span style="color: black;">运用</span>依赖于系统的特性,<span style="color: black;">那样</span>你的所有Python程序无需修改就<span style="color: black;">能够</span>在下述任何平台上面运行。这些平台<span style="color: black;">包含</span>Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE<span style="color: black;">乃至</span>还有PocketPC、Symbian以及Google基于linux<span style="color: black;">研发</span>的Android平台!解释性————这一点<span style="color: black;">必须</span><span style="color: black;">有些</span>解释。一个用编译性语言<span style="color: black;">例如</span>C或C++写的程序<span style="color: black;">能够</span>从源文件(即C或C++语言)转换到一个你的计算机<span style="color: black;">运用</span>的语言(二进制代码,即0和1)。这个过程<span style="color: black;">经过</span>编译器和<span style="color: black;">区别</span>的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不<span style="color: black;">必须</span>编译成二进制代码。你<span style="color: black;">能够</span>直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成<span style="color: black;">叫作</span>为字节码的中间形式,<span style="color: black;">而后</span>再把它翻译成计算机<span style="color: black;">运用</span>的<span style="color: black;">设备</span>语言并运行。事实上,<span style="color: black;">因为</span>你<span style="color: black;">再也不</span><span style="color: black;">必须</span>担心<span style="color: black;">怎样</span>编译程序,<span style="color: black;">怎样</span><span style="color: black;">保证</span>连接转载正确的库等等,所有这一切使得<span style="color: black;">运用</span>Python更加简单。<span style="color: black;">因为</span>你只<span style="color: black;">必须</span>把你的Python程序拷贝到<span style="color: black;">另一</span>一台计算机上,它就<span style="color: black;">能够</span>工作了,这<span style="color: black;">亦</span>使得你的Python程序更加易于移植。面向对象————Python既支持面向过程的编程<span style="color: black;">亦</span>支持面向对象的编程。在“面向过程”的语言中,程序<span style="color: black;">是由于</span>过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序<span style="color: black;">是由于</span>数据和功能组合而成的对象构建起来的。与其他<span style="color: black;">重点</span>的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。可扩展性————<span style="color: black;">倘若</span>你<span style="color: black;">必须</span>你的一段关键代码运行得更快<span style="color: black;">或</span><span style="color: black;">期盼</span>某些算法不公开,你<span style="color: black;">能够</span>把你的部分程序用C或C++编写,<span style="color: black;">而后</span>在你的Python程序中<span style="color: black;">运用</span>它们。丰富的库————Python标准库确实很庞大。它<span style="color: black;">能够</span><span style="color: black;">帮忙</span>你处理<span style="color: black;">各样</span>工作,<span style="color: black;">包含</span>正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、<span style="color: black;">秘码</span>系统、GUI(图形用户界面)、Tk和其他与系统<span style="color: black;">相关</span>的操作。记住,只要安装了Python,所有这些功能都是可用的。这被<span style="color: black;">叫作</span>作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。规范的代码————Python采用强制缩进的方式使得代码<span style="color: black;">拥有</span>极佳的可读性。<p style="font-size: 16px; color: black; line-height: 40px; text-align: left; margin-bottom: 15px;"><strong style="color: blue;">缺点</strong></p>运行速度,有速度<span style="color: black;">需求</span>的话,用C++改写关键部分吧。国内市场较小(国内以python来做<span style="color: black;">重点</span><span style="color: black;">研发</span>的,<span style="color: black;">日前</span><span style="color: black;">仅有</span><span style="color: black;">有些</span>web2.0<span style="color: black;">机构</span>)。但时间推移,<span style="color: black;">日前</span><span style="color: black;">非常多</span>国内软件<span style="color: black;">机构</span>,尤其是游戏<span style="color: black;">机构</span>,<span style="color: black;">亦</span><span style="color: black;">起始</span>规模<span style="color: black;">运用</span>他。中文资料匮乏(好的python中文资料屈指可数)。托社区的福,有几本优秀的教材<span style="color: black;">已然</span>被翻译了,但入门级教材多,高级内容还是只能看英语版。构架<span style="color: black;">选取</span>太多(<span style="color: black;">无</span>像C#<span style="color: black;">这般</span>的官方.net构架,<span style="color: black;">亦</span><span style="color: black;">无</span>像ruby<span style="color: black;">因为</span>历史较短,构架<span style="color: black;">研发</span>的相对集中。Ruby on Rails 构架<span style="color: black;">研发</span>中小型web程序天下无敌)。<span style="color: black;">不外</span>这<span style="color: black;">亦</span>从另一个侧面说明,python比较优秀,吸引的人才多,项目<span style="color: black;">亦</span>多。<h1 style="color: black; text-align: left; margin-bottom: 10px;"><strong style="color: blue;">3. Python应用场景</strong></h1><strong style="color: blue;">Web应用<span style="color: black;">研发</span></strong>Python经常被用于Web<span style="color: black;">研发</span>。<span style="color: black;">例如</span>,<span style="color: black;">经过</span>mod_wsgi模块,Apache<span style="color: black;">能够</span>运行用Python编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。<span style="color: black;">有些</span>Web框架,如Django,TurboGears,web2py,Zope等,<span style="color: black;">能够</span>让程序员<span style="color: black;">容易</span>地<span style="color: black;">研发</span>和管理<span style="color: black;">繁杂</span>的Web程序。<strong style="color: blue;">操作系统管理、服务器运维的自动化脚本</strong>在<span style="color: black;">非常多</span>操作系统里,Python是标准的系统组件。 大<span style="color: black;">都数</span>Linux发行版以及NetBSD、OpenBSD和Mac OS X都集<span style="color: black;">成为了</span>Python,<span style="color: black;">能够</span>在终端下直接运行Python。有<span style="color: black;">有些</span>Linux发行版的安装器<span style="color: black;">运用</span>Python语言编写,<span style="color: black;">例如</span>Ubuntu的Ubiquity安装器,Red Hat Linux和Fedora的Anaconda安装器。Gentoo Linux<span style="color: black;">运用</span>Python来编写它的Portage包管理系统。Python标准库<span style="color: black;">包括</span>了多个调用操作系统功能的库。<span style="color: black;">经过</span>pywin32这个第三方软件 包,Python能够<span style="color: black;">拜访</span>Windows的COM服务及其它Windows API。<span style="color: black;">运用</span>IronPython,Python程序能够直接调用.Net Framework。<span style="color: black;">通常</span>说来,Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。<strong style="color: blue;">科学计算</strong>NumPy,SciPy,Matplotlib<span style="color: black;">能够</span>让Python程序员编写科学计算程序。<strong style="color: blue;">桌面软件</strong>PyQt、PySide、wxPython、PyGTK是Python快速<span style="color: black;">研发</span>桌面应用程序的利器。<strong style="color: blue;">服务器软件(网络软件)</strong>Python<span style="color: black;">针对</span><span style="color: black;">各样</span>网络协议的支持很完善,<span style="color: black;">因此呢</span>经常被用于编写服务器软件、网络爬虫。第三方库Twisted支持异步网络编程和<span style="color: black;">都数</span>标准的网络协议(<span style="color: black;">包括</span>客户端和服务器),并且<span style="color: black;">供给</span>了多种工具,被广泛用于编写高性能的服务器软件。<strong style="color: blue;">游戏</strong><span style="color: black;">非常多</span>游戏<span style="color: black;">运用</span>C++编写图形<span style="color: black;">表示</span>等高性能模块,而<span style="color: black;">运用</span>Python<span style="color: black;">或</span>Lua编写游戏的<span style="color: black;">规律</span>、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持<span style="color: black;">更加多</span>的特性和数据类型。<strong style="color: blue;">构思实现,<span style="color: black;">制品</span><span style="color: black;">初期</span>原型和迭代</strong>YouTube、Google、Yahoo!、NASA都在内部<span style="color: black;">海量</span>地<span style="color: black;">运用</span>Python。
</div>
说得好啊!我在外链论坛打滚这么多年,所谓阅人无数,就算没有见过猪走路,也总明白猪肉是啥味道的。 你说得对,我们一起加油,未来可期。 我完全同意你的看法,期待我们能深入探讨这个问题。 一看到楼主的气势,我就觉得楼主同在社区里灌水。
页:
[1]