Python2.X与Python3.X的区别,,  2014年11月


  2014年11月,Python2.7将在2020年停止的消息发布,并且不会再发布2.8版本,建议用户尽量升级至3.4以,上版本,原因是Python在最初发布时,在某些设计上存在一些缺陷,比如Unicode(统一码、万国码、单一码)标准晚于Python出现,所以一直以来对Unicode的支持并不完全,而ASCII编码支持的字符有限,比如对中文支持不好.

  Python3相对于Python早期的版本是一个较大的升级,Python3在设计时并未考虑向下兼容所以很多早起版本的Python程序无法在Python3上运行.为了照顾早期版本,推出了过渡版本2.6--基本使用了Python 2.x的语法和库,同时考虑了向Python 3.0版本的迁移,允许使用部分3.0版本的语法与函数.

  2010年继续推出了兼容版2.7,大量Python3的特性被反向迁移到了Python2.7,2.7相对2.6进步很多,同时拥有大量3中的特性和库,并且照顾了原有的Python开发人群.

  Python2.7是Python2系列的最后一个版本,已经停止开发,不再增加新功能,2020年将终止支持,所有的最新的标准库的更新改进,只会在3.x的版本里出现.Guido决定清理Python2.x ,并且不再兼容旧版本.最大的一个改变就是使用Unicode作为默认编码,Pyhton2.x中直接写中文会报错,Python3中可以直接写中文了.

  Python3相对于Python2更规范统一,并且还在持续改进.

Python3与Python2的对比差别(不断完善补充中..):

Python2Python3
源码重复,不规范整合源码,更清晰简单优美
默认的编码是ascii,
解决方式:# -*- encoding:utf-8 -*-
默认的编码是utf-8
long int
print ‘abc‘ print(‘abc‘)
无long int
print(‘abc‘)
raw_input()
input() 只能输入数字类型
input
不等于有两种写法 != 和 <>去掉了<>, 只有!=一种写法

Python2.X与Python3.X的区别

评论关闭