python2/3區別

1.默認解釋器編碼:   py2,ascii   py3,unicode 2.輸入:   py2,raw_ input   py3,input 3.輸出:   py2, print "內容」   py3, print('內容') 4.整數長度   py2,int + long   py3, int 5.整除   py2, 5/2=2   py3, 5/2=2.5

6.內涵 Python2:1.臃腫,源碼的重複量很多。      2.語法不清晰,摻雜著C,php,Java,的一些陋習。 Python3:幾乎是重構後的源碼,規範,清晰,優美。

7.輸出中文的區別   python2:要輸出中文 需加 # -*- encoding:utf-8 -*-   Python3 : 直接搞

8.指定位元組   python2在編譯安裝時,可以通過參數—–enable-unicode=ucs2 或—–enable-unicode=ucs4分別用於指定使用2個位元組、4個位元組表示一個unicode;   python3無法進行選擇,默認使用 ucs4   查看當前python中表示unicode字元串時佔用的空間:   impor sys   print(sys.maxunicode)   #如果值是65535,則表示使用usc2標準,即:2個位元組表示   #如果值是1114111,則表示使用usc4標準,即:4個位元組表示 9. py2:xrange    range py3:range 統一使用range,Python3中range的機制也進行修改並提高了大數據集生成效率

10.在包的知識點裡   包:一群模組文件的集合 + __init__   區別:py2 : 必須有__init__      py3:不是必須的了

11.不相等操作符"<>"被Python3廢棄,統一使用"!="

12.long整數類型被Python3廢棄,統一使用int

13.迭代器iterator的next()函數被Python3廢棄,統一使用next(iterator)

14.異常StandardError 被Python3廢棄,統一使用Exception

15.字典變數的has_key函數被Python廢棄,統一使用in關鍵詞

16.python3字元串是str 位元組是bytes;python2

17. Py2項目如何遷移成py3?   使用python3 中自帶的2to3腳本在終端中輸入一下命令