1. 程式人生 > >Python2.X與Python3.X的區別

Python2.X與Python3.X的區別

blog 還在 height 很多 2.7 基本使用 所有 只能輸入數字 asc

  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的對比差別(不斷完善補充中..):

Python2 Python3
源碼重復,不規範 整合源碼,更清晰簡單優美
默認的編碼是ascii,
解決方式:# -*- encoding:utf-8 -*-
默認的編碼是utf-8
long int
print ‘abc‘ print(‘abc‘)
無long int
print(‘abc‘)
raw_input()
input() 只能輸入數字類型
input
不等於有兩種寫法 != 和 <> 去掉了<>, 只有!=一種寫法

Python2.X與Python3.X的區別