python发展史

python发展史

一:Python介绍

Python之路,Day1 – Python基础1

 

python的元老为吉多·范罗苏姆(Guidovan 罗斯尔um卡塔尔(龟叔)。一九九〇年的圣诞节里面,吉多·范罗苏姆为了在马德里打发时光,决心开辟一个新的本子解释程序,作为ABC语言的黄金时代种持续。于是便有了python。

本节内容

  1. Python介绍
  2. 发展史
  3. Python 2 or 3?

 

Python可以选用于广大领域,如:数据剖析、组件集成、网络服务、图像管理、数值计算和科学计算等重重世界。方今行业内部大致全部大中型网络集团都在使用Python,如:Youtube、Dropbox、BT、Quora(中华夏族民共和国果壳网卡塔尔、豆瓣、腾讯网、谷歌、Yahoo!、Twitter、NASA、百度、腾讯、搜狐汽车、美团等。

一、 Python介绍

python的开创者为吉多·范罗苏姆(吉多 van
罗斯尔um卡塔尔国。1990年的圣诞节时期,吉多·范罗苏姆为了在布鲁塞尔打发时光,决心开荒三个新的本子解释程序,作为ABC语言的大器晚成种持续。  

最新的TIOBE排行榜(2017,11月的),Python赶超c#占用第四, Python崇尚精彩、清晰、简单,是二个名特别巨惠并大范围选取的语言。

图片 1

 

由上海教室可知,Python全部呈上涨趋势,反映出Python应用越发冷眼观察何况也逐年获得行业内部的承认!!!

Python能够采纳于广大天地,如:数据深入深入分析、组件集成、互连网服务、图像管理、数值计算和科学计算等超多领域。

最近Python首要应用领域:

云计算,WEB开采,科学生运动算,人工智能,系统运营,金融,图形GUI**

案由:作为动态语言的Python,语言结构清晰简单,库丰盛,成熟稳固,科学总括和计算剖析都很牛逼,临盆成效远远高于c,c++,java,越发专长战略回测

 

编制程序语言首要从以下多少个角度为开展分拣,编写翻译型和平解决释型、静态语言和动态语言、强类型定义语言和弱类型定义语言。

眼下Python首要应用领域

编译和演讲的分别是何许?

编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,那样运营时Computer能够直接以机器语言来运维此程序,速度相当慢; 

解释器则是只在实行顺序时,才一条一条的表达成机器语言给Computer来奉行,所以运维速度是比不上编写翻译后的程序运维的快的. 

那是因为计算机不能够一直认知并实行大家写的口舌,它只可以认知机器语言(是二进制的样式)

 

 

 图片 2

 

 

 图片 3

 

云计算: 云总括最火的言语,
标准应用OpenStack WEB开采:
众多优越的WEB框架,众多特大型网址均为Python开荒,Youtube, Dropbox,
豆瓣。。。, 标准WEB框架有Django

编译型vs解释型

编译型
可取:编写翻译器日常会有预编写翻译的经过对代码实行优化。因为编写翻译只做贰遍,运转时不须求编写翻译,所以编写翻译型语言的程序实施功能高。能够脱离语言景况独立运行。
破绽:编写翻译之后假若供给校正就供给全部模块重新编译。编写翻译的时候根据对应的运行蒙受生成机器码,分化的操作系统之间移植就能够十分,须求基于运维的操作系统意况编写翻译分歧的可实施文件。

解释型
亮点:有可观的阳台包容性,在别的条件中都可以运作,前提是安装精晓释器(虚构机卡塔 尔(英语:State of Qatar)。灵活,修改代码的时候向来改换就足以,能够连忙安排,不用停机维护。

症结:每一次运转的时候都要解释三回,质量上不比编写翻译型语言。

 

 

style=”font-family: "Microsoft YaHei"”>黄金年代、低档语言与高级语言

style=”font-family: "Microsoft YaHei"”>最早的微处理器程序都以用0和1的队列表示的,程序猿间接行使的是机器指令,无需翻译,从纸带打孔输入就可以进行得到结果。后来为了便利记念,就将用0、1队列表示的机器指令都用符号助记,这个与机器指令生机勃勃大器晚成对应的助记符就成了汇编指令,进而诞生了汇编语言。无论是机器指令依然汇编指令都是面向机器的,统称为低等语言。因为是针对一定机器的机器指令的助记符,所以汇编语言是心有余而力不足独立于机器(特定的CPU体系布局)的。但汇编语言也是要经过翻译成机器指令工夫试行的,所以也会有将运维在后生可畏种机器上的汇编语言翻译成运转在另大器晚成种机器上的机器指令的措施,那就是交叉汇编工夫。

style=”font-family: "Microsoft YaHei"”>高端语言是从人类的逻辑思忖角度出发的微型机语言,抽象程度大大提升,需求通过编写翻译成特定机器上的对象代码本领施行,一条高端语言的说话往往需求多少条机器指令来形成。高等语言独立于机器的风味是靠编写翻译器为不相同机器生成不相同的指标代码(或机器指令)来完成的。那现实的说,要将高端语言编写翻译到哪边水平吗,那又跟编写翻译的才具有关了,不仅能够编写翻译成直接可进行的靶子代码,也能够编译成大器晚成种中间表示,然后得到不一样的机器和系统上去实践,这种意况日常又要求帮忙景况,举个例子解释器或虚构机的扶植,Java程序编写翻译成bytecode,再由分歧平台上的虚构机实行就是很好的例证。所以,说高档语言不相信任于机器,是指在区别的机器或平台上高端语言的主次自身不改变,而由此编写翻译器编写翻译获得的对象代码去适应分化的机械。从那几个意思上的话,通过交叉汇编,一些汇编制程序序也能够博得区别机器之间的可移植性,但这种路线拿到的移植性远远比不上高档语言来的便利和实用性大。

style=”font-family: "Microsoft YaHei"”>二、编写翻译与解释

style=”font-family: "Microsoft YaHei"”>编写翻译是将源程序翻译成可推行的指标代码,翻译与实行是分别的;而解释是对源程序的翻译与施行叁回性完结,不生成可存款和储蓄的目的代码。那只是表象,二者背后的最大分别是:对解释推行来讲,程序运营时的调整权在解释器而不在顾客程序;对编写翻译执行来说,运营时的调节权在客商程序。

style=”font-family: "Microsoft YaHei"”>解释具备能够的动态本性和可移植性,比如在表达实行时方可动态退换变量的种类、对程序实行改造以至在前后相继中插入杰出的调节和测验确诊音讯等,而将解释器移植到不一样的系统上,则程序不用退换就足以在移植掌握释器的种类上运维。同期解释器也是有比十分大的症结,举个例子执行功效低,占用空间大,因为不只有要给客商程序分配空间,解释器自己也并吞了不少的系统能源。

style=”font-family: "Microsoft YaHei"”>编写翻译器是把源程序的每一条语句都编写翻译成机器语言,并保存成二进制文件,那样运维时Computer能够直接以机器语言来运作此程序,速度迅猛;
style=”font-family: "Microsoft YaHei"”>而解释器则是只在实践顺序时,才一条一条的解说成机器语言给计算机来实践,所以运维速度是不及编译后的程序运维的快的.

 

style=”font-family: "Microsoft YaHei"”>编写翻译型和平解决释型
style=”font-family: "Microsoft YaHei"”>大家先看看编写翻译型,其实它和汇编语言是均等的:也可以有多个担负翻译的次序来对大家的源代码举办转变,生成相对应的可进行代码。这些进程说得标准一点,就叫做编译(Compile卡塔 尔(英语:State of Qatar),而担当编写翻译的主次自然就称为编写翻译器(Compiler卡塔 尔(阿拉伯语:قطر‎。纵然我们写的程序代码都包蕴在一个源文件中,那么日常编译之后就会间接生成一个可试行文件,大家就足以一直运维了。但对此一个相比复杂的门类,为了方便处理,大家日常把代码分散在逐风度翩翩源文件中,作为差别的模块来协会。这个时候编译种种文件时就能变动指标文件(Object
 
file卡塔 尔(阿拉伯语:قطر‎实际不是近些日子说的可实行文件。通常一个源文件的编写翻译都会相应七个目的文件。那一个目的文件里的剧情多数已然是可推行代码了,但出于只是一切项目的意气风发部分,所以大家还无法一贯运转。待全体的源文件的编写翻译都马到功成,我们就足以最后把这一个半产品的对象文件“打包”成二个可推行文件了,这么些职业由另叁个主次担负实现,由于此进程看似是把带有可举办代码的指标文件三回九转装配起来,所以又称作链接(Link卡塔尔,而负责链接的程序就叫……就叫链接程序(Linker卡塔尔国。链接程序除了链接指标文件外,可能还也是有各个财富,像Logo文件啊、声音文件啊什么的,还要担任去除指标文件之间的冗余重复代码,等等,所以……也是挺累的。链接完毕今后,平日就能够获取大家想要的可施行文件了。 

style=”font-family: "Microsoft YaHei"”>上边我们大概地介绍了编写翻译型语言的表征,以往再看看解释型。噢,从字面上看,“编写翻译”和“解释”的确皆有“翻译”的意味,它们的区分则在于翻译的机遇布置十分小相近。打个比如:倘令你构思阅读一本外文书,而你不驾驭那门外语,那么您能够找一名翻译,给她丰盛的岁月让他从头到尾把整本书翻译好,然后把书的母语版交给你读书;可能,你也立马让那名翻译帮助你读书,让她一句一句给您翻译,要是您想往回放有个别章节,他也得重复给您翻译。 

style=”font-family: "Microsoft YaHei"”>两种方法,后面一个就也等于大家刚刚所说的编译型:一遍把具备的代码调换来机器语言,然后写成可推行文件;而后人就一定于大家要说的解释型:在程序运维的前一刻,还独有源程序而从不可执路程序;而前后相继每实行到源程序的某一条指令,则会有二个名字为解释程序的外壳程序将源代码调换成二进制代码以供实行,总言之,正是不断地解释、试行、解释、试行……所以,解释型程序是离不开解释程序的。像开始时代的BASIC就是一门精粹的解释型语言,要推行BASIC程序,就得进来BASIC景况,然后技艺加载程序源文件、运营。解释型程序中,由于程序连接以源代码的格局现身,由此风流洒脱旦有料理的解释器,移植差非常的少小难题。编写翻译型程序纵然源代码也能够移植,但前提是必得针对不相同的系列分别开展编写翻译,对于复杂的工程以来,实在是黄金年代件超大的大运消耗,而且很也许某些细节的地点可能要改进源代码。何况,解释型程序省却了编写翻译的步调,改善调节和测量试验也特别便利,编辑完毕之后就能够及时运营,不必像编写翻译型程序同样每一次进行小小的退换都要意志等待悠久的Compiling…Linking…那样的编写翻译链接进度。可是总体各有利弊,由于解释型程序是将编译的长河置于实行进程中,那就决定明白释型程序决定要比编译型慢上一大截,像几百倍的进程差异也是难以为继为奇的。 

style=”font-family: "Microsoft YaHei"”>编写翻译型与解释型,两个有利有弊。后边八个由于程序实行速度快,同等条件下对系统要求异常的低,因而像开拓操作系统、大型应用程序、数据库系统等时都应用它,像C/C++、Pascal/Object
 
Pascal(Delphi卡塔尔、VB等中央都可就是编写翻译语言,而某些网页脚本、服务器脚本及支援开垦接口那样的对速度供给不高、对两样连串平台间的包容性有早晚须求的次序则通常使用解释性语言,如Java、JavaScript、VBScript、Perl、Python等等。 

style=”font-family: "Microsoft YaHei"”>但既然编写翻译型与解释型各有利弊又相互对峙,所以一堆新兴的言语都有把双边折衷起来的样子,比如Java语言固然比较相近解释型语言的表征,但在实施此前曾经初期举行二次预编写翻译,生成的代码是介于机器码和Java源代码之间的中介代码,运营的时候则由JVM(Java的设想机平台,可说是解释器卡塔 尔(英语:State of Qatar)解释实施。它既保存了源代码的高抽象、可移植的风味,又已经到位了对源代码的大多数预编写翻译工作,所以举行起来比“纯解释型”程序要快好多。而像VB6(只怕从前版本卡塔尔、C#如此的语言,尽管外表上看变化的是.exe可执路程序文件,但VB6编写翻译之后实际变化的也是风流洒脱种中介码,只不过编写翻译器在头里安顿了后生可畏段机关调用某些外界解释器的代码(该解释程序独立于顾客编写的次第,存放于系统的某些DLL文件中,全数以VB6编写翻译生成的可施行程序都要用到它卡塔 尔(阿拉伯语:قطر‎,以分解奉行实际的程序体。C#(以至别的.net的言语编写翻译器卡塔尔国则是生成.net目的代码,实际实施时则由.net解释系统(就疑似JVM相近,也是叁个设想机平台卡塔 尔(阿拉伯语:قطر‎举办实行。当然.net目的代码已经极度“低端”,相比像样机器语言了,所以仍将其便是编写翻译语言,并且其可移植程度也远非Java称得上的这么强盛,Java称得上是“贰遍编写翻译,随处实践”,而.net则是“一次编码,四处编写翻译”。呵呵,当然那一个都以题外话了。简来说之,随着安加入艺与硬件的穿梭发展,编写翻译型与解释型两种方法的底限正在不停变得模糊。

style=”font-family: "Microsoft YaHei"”>动态语言和静态语言
style=”font-family: "Microsoft YaHei"”>日常大家所说的动态语言、静态语言是指动态类型语言和静态类型语言。

style=”font-family: "Microsoft YaHei"”>(1卡塔 尔(英语:State of Qatar)动态类型语言:动态类型语言是指在运转时期才去做数据类型检查的语言,约等于说,在用动态类型的语言编制程序时,永恒也不用给别的变量内定数据类型,该语言会在你首先次赋值给变量时,在里头将数据类型记录下来。Python和Ruby便是大器晚成种标准的动态类型语言,别的的各类脚本语言如VBScript也略微归属动态类型语言。

style=”font-family: "Microsoft YaHei"”>(2卡塔尔静态类型语言:静态类型语言与动态类型语言适逢其时相反,它的数据类型是在编译其间检查的,也正是说在写程序时要声明全数变量的数据类型,C/C++是静态类型语言的卓著代表,其余的静态类型语言还应该有C#、JAVA等。

 

style=”font-family: "Microsoft YaHei"”>强类型定义语言和弱类型定义语言

style=”font-family: "Microsoft YaHei"”>(1卡塔尔强类型定义语言:强制数据类型定义的言语。约等于说,风流倜傥旦叁个变量被钦命了某些数据类型,即便不通过强制调换,那么它就长久是其大器晚成数据类型了。举例:若是您定义了四个整型变量a,那么程序根本不容许将a充任字符串类型管理。强类型定义语言是项目安全的语言。

style=”font-family: "Microsoft YaHei"”>(2卡塔 尔(阿拉伯语:قطر‎弱类型定义语言:数据类型能够被忽视的语言。它与强类型定义语言相反,
四个变量能够赋不相同数据类型的值。

style=”font-family: "Microsoft YaHei"”>强类型定义语言在进度上也许略逊色于弱类型定义语言,不过强类型定义语言带给的严刻性能够行得通的幸免过多破绽百出。此外,“这门语言是否动态语言”与“那门语言是不是类型安全”之间是一点一滴没有交换的!
style=”font-family: "Microsoft YaHei"”>举个例子:Python是动态语言,是强类型定义语言(类型安全的言语卡塔尔;
VBScript是动态语言,是弱类型定义语言(类型不安全的语言卡塔 尔(阿拉伯语:قطر‎;
JAVA是静态语言,是强类型定义语言(类型安全的语言卡塔尔。

 

style=”font-family: "Microsoft YaHei"”>通过上边那么些介绍,我们能够吸收, style=”color: #ff0000; font-size: 16px”>python是一门动态解释性的强类型定义语言。那这几个基因使成就了Python的怎么优短处呢?大家继续往下看。

毫无疑问运算、人工智能:
典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas

 

系统运转:
运营职员必备语言

Python的利害

先看亮点

  1. Python的一贯是“崇高”、“分明”、“轻易”,所以Python程序看上去总是轻易易懂,初学者学Python,不但入门轻巧,而且以往浓重下去,能够编写那多少个可怜极度复杂的次序。
  2. 开拓功能相当高,Python有十二分强盛的第三方库,基本上你想经过计算机完毕其余功能,Python官方Curry皆有对应的模块实行支撑,间接下载调用后,在底工库的底子上再开张开荒,大大减少开采周期,防止重新造轮子。
  3. 尖端语言————当您用Python语言编写程序的时候,你不须求思索诸如哪些管理你的次第选用的内部存款和储蓄器生机勃勃类的最底层细节
  4. 可移植性————由于它的开源本质,Python已经被移植在无数阳台上(经过改造使它亦可工作在分裂平台上卡塔 尔(英语:State of Qatar)。若是你小心地幸免选用信任于系统的风味,那么你的具备Python程序无需改正就差不离能够在市集上全部的系统平台上运行
  5. 可扩大性————要是你必要你的生龙活虎段珍视代码运转得更加快依然希望有个别算法不公开,你可以把你的一些程序用C或C++编写,然后在你的Python程序中使用它们。
  6. 可嵌入性————你能够把Python嵌入你的C/C++程序,进而向您的主次顾客提供脚本作用。

再看劣点:

  1. 速度慢,Python
    的运行速度比较C语言确实慢比超多,跟JAVA相比较也要慢一些,由此那也是超多所谓的大咖不屑于使用Python的重中之重缘由,但实际这里所指的运维速度慢在繁多状态下客商是力不能及间接感知到的,必得信赖测验工具工夫展现出来,举个例子您用C运一个主次花了0.01s,用Python是0.1s,那样C语言直接比Python快了10倍,算是那些夸张了,不过你是无计可施间接通过肉眼感知的,因为贰个好人所能感知的年月非常小单位是0.15-0.4s左右,哈哈。其实在一大半情形下Python已经完全能够满足你对程序速度的渴求,除非您要写对进程必要超高的物色引擎等,这种情状下,当然照旧提议您用C去贯彻的。
  2. 代码不能够加密,因为PYTHON是解释性语言,它的源码都以以名文格局寄存的,然则本人不以为那终归二个毛病,假诺您的体系要求源代码必需是加密的,那你一同始就不应该用Python来去贯彻。
  3. 线程不能够利用多CPU难点,那是Python被人责难最多的二个短处,GIL即全局解释器锁(Global
    Interpreter
    Lock卡塔 尔(阿拉伯语:قطر‎,是计算机程序设计语言解释器用于合作线程的工具,使得任什么时候刻独有一个线程在实施,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win
    thread,完全由操作系统调治线程的实施。一个python解释器进程内有一条主线程,以至多条客户程序的试行线程。纵然在多核CPU平台上,由于GIL的存在,所以幸免三十二线程的并行实践。关于那些问题的退让消除措施,我们在那后线程和进程章节里再扩充详尽研究。

 

自然,Python还会有局地其余的小瑕玷,在那就不后生可畏一列举了,小编想说的是,任何一门语言都不是无所不至的,都有专长和非常短于做的事务,提议各位别拿二个言语的短处去跟另叁个语言的优势来去相比,语言只是一个工具,是落到实处程序设计员观念的工具,就好像大家在此之前中学学几几时,有时需要要圆规,不时要求用三角尺同样,拿相应的工具去做它最拿手的事才是科学的采取。以前很几人问作者Shell和Python到底哪些好?作者答应说Shell是个脚本语言,但Python不只是个脚本语言,能做的工作更加多,然后又有钻牛角的人说未有要求学Python,
Python能做的业务Shell都得以做,只要你丰硕牛B,然后又举了用Shell能够写俄罗丝方块那样的游玩,对此笔者能说表明只好是,不要跟SB理论,SB会把您拉到跟她同样的中度,然后用足够的经历把您打倒。

 

 

金融:量化交易,金融深入分析,在金融工程领域,Python不但在用,且用的最多,而且注重日益增高。原因:作为动态语言的Python,语言结构清晰简单,库丰盛,成熟稳定,科学总计和总计分析都很牛逼,生产作用远远高
于c,c++,java,特别专长战术回测

Python解释器

当我们编辑Python代码时,大家收获的是多少个包含Python代码的以.py为扩大名的文件文件。要运营代码,就需求Python解释器去试行.py文件。

鉴于全数Python语言从标准到解释器都以开源的,所以理论上,只要水平够高,任哪个人都得以编写Python解释器来施行Python代码(当然难度异常的大卡塔 尔(英语:State of Qatar)。事实上,确实存在各种Python解释器。

图形GUI:
PyQT, WxPython,TkInter

CPython

当大家从Python官网下载并设置好Python
2.7后,大家就平素获取了三个官方版本的解释器:CPython。这些解释器是用C语言开荒的,所以叫CPython。在命令行下运营python正是运行CPython解释器。

CPython是使用最广的Python解释器。教程的具备代码也都在CPython下进行。

Python在部分小卖部的利用

IPython

IPython是依赖CPython之上的多个交互作用式解释器,也正是说,IPython只是在交互作用形式上存有增加,可是进行Python代码的功用和CPython是一丝一毫平等的。好比好多进口浏览器固然外观分裂,但底子其实都以调用了IE。

CPython用>>>作为提示符,而IPython用In [``序号``]:作为提示符。

谷歌:谷歌App Engine 、code.google.com 、谷歌(Google卡塔尔 earth
、谷歌爬虫、谷歌(Google卡塔尔国广告等门类都在大批量 使用Python开荒

PyPy

PyPy是另叁个Python解释器,它的指标是施行进程。PyPy选取JIT本领,对Python代码进行动态编写翻译(注意不是分解卡塔尔,所以能够显著增加Python代码的施行进程。

多方Python代码都得以在PyPy下运营,可是PyPy和CPython有点是差别的,那就引致相似的Python代码在二种解释器下实行可能会有例外的结果。倘若您的代码要松手PyPy下实行,就要求领悟PyPy和CPython的差别点。

CIA:
U.S.A.中情局网址就是用Python开辟的

Jython

Jython是运作在Java平台上的Python解释器,可以直接把Python代码编写翻译成Java字节码实践。

NASA:
美利坚合众国航天局(NASA)多量接纳Python实行数量剖判和运算

IronPython

IronPython和Jython雷同,只然而IronPython是运维在微软.Net平台上的Python解释器,能够一向把Python代码编写翻译成.Net的字节码。

YouTube:世界上最大的录像网址YouTube正是用Python开采的

小结

Python的解释器超多,但使用最广泛的照旧CPython。如若要和Java或.Net平台相互,最棒的不二法门不是用Jython或IronPython,而是通过互联网调用来交互作用,确定保障各程序之间的独立性。

 

Dropbox:美利坚同盟国最大的在线云存款和储蓄网址,全体用Python完结,每一日网站拍卖10亿个公文的上传和下载

二、Python发展史 

  • 一九八七年,为了消磨圣诞节日假期日,吉多最早写Python语言的编写翻译器。Python那么些名字,来自吉多所挚爱的影视剧Monty
    Python’s Flying
    Circus。他盼望以此新的名称为Python的语言,能符合她的优越:成立朝气蓬勃种C和shell之间,成效完备,易学易用,可进展的语言。
  • 一九九一年,第二个Python编写翻译器诞生。它是用C语言完结的,并能够调用C语言的库文件。从黄金时代诞生,Python已经持有了:类,函数,格外管理,包括表和词典在内的主导数据类型,以至模块为底工的扩充系统。
  • Granddaddy of Python web frameworks, Zope 1 was released in 1999
  • Python 1.0 – January 1994 增加了 lambda, map, filter and reduce.
  • Python 2.0 – October 16,
    2002,参加了内部存款和储蓄器回笼机制,构成了今后Python语言框架的底蕴
  • Python 2.4 – November 30, 二零零二, 同年近日最流行的WEB框架Django 诞生
  • Python 2.5 – September 19, 2006
  • Python 2.6 – October 1, 2008
  • Python 2.7 – July 3, 2010
  • In November 2014, it was announced that Python 2.7 would be
    supported until 2020, and reaffirmed that there would be no 2.8
    release as users were expected to move to Python 3.4+ as soon as
    possible
  • Python 3.0 – December 3, 2008
  • Python 3.1 – June 27, 2009
  • Python 3.2 – February 20, 2011
  • Python 3.3 – September 29, 2012
  • Python 3.4 – March 16, 2014
  • Python 3.5 – September 13, 2015

Instagram:美国最大的图纸分享社交网站,每一天超越3千万张照片被分享,全体用python开荒

三、Python 2 or 3?

Facebook:多量的幼功库均通过Python完结的

Python 2.x是遗产,python3.x是语言的不久前和前途,最根本的是Python2.X最多援助到二〇二〇年!

Redhat:
世界上最风靡的Linux发行版本中的yum包管理工具便是用python开垦的

py2与3的详尽分歧

PRINT IS A FUNCTION

The statement has been replaced with a print() function, with keyword
arguments to replace most of the special syntax of the old statement
(PEP 3105). Examples: 

1
2
3
4
5
6
7
Old: print "The answer is"2*2 New: print("The answer is"2*2)
Old: print x, # Trailing comma suppresses newline New: print(x, end=" ") # Appends a space instead of a newline
Old: print # Prints a newline
New: print() # You must call the function!
Old: print >>sys.stderr, "fatal error" New: print("fatal error"file=sys.stderr)
Old: print (x, y) # prints repr((x, y))
New: print((x, y)) # Not the same as print(x, y)!

You can also customize the separator between items, e.g.: 

1
print("There are <"2**32"> possibilities!", sep="")

ALL IS UNICODE NOW

而后不再为厌倦的字符编码而烦扰

 

还可以如此玩: (A,*REST,B)=RANGE(5)

1
2
3
4
<strong>>>> a,*rest,b = range(5)
>>> a,rest,b
(0, [123], 4)
</strong>

  

或多或少库改名了

 

Old Name

New Name

_winreg

winreg

ConfigParser

configparser

copy_reg

copyreg

Queue

queue

SocketServer

socketserver

markupbase

_markupbase

repr

reprlib

test.test_support

test.support

  

 

还会有什么人不扶持PYTHON3?

三个不扶持Python 3的盛行模块是Twisted(用于互联网和其余应用程序)。

 

引用参考地址:

 

豆瓣:
公司大概全体的政工均是通过Python开荒的

知乎:
国内最大的问答社区,通过Python开辟(海外Quora)

网站地图xml地图