Python2与Python3区别
生活随笔
收集整理的這篇文章主要介紹了
Python2与Python3区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python2與Python3區別
1.源碼\功能代碼
Python3源碼統一,沒有重復的功能代碼 Python2源碼不統一,有重復的功能代碼2.input
Python3中input()得到的都是字符串(str) Python2中的input()得到的是整型(int),Python2中的raw_input()得到的是字符串(str) Python 3中的 input 等同Python 2 中的 raw_input ,默認接收的數據是str類型3.print
Python3中print為一個函數,必須用括號括起來 Python2中print為語句,可以執行代碼4./(整除)
Python3中/(整除)獲取到的默認是浮點型 Python2中/(整除)獲取到的默認是整型(int)5.默認編碼
Python3中的默認編碼為UTF-8,UTF-8屬于unicode編碼,支持大多數語言,且可變長度,空間較為節省。在Python 3 中寫代碼再不用聲明# coding:utf-8 Python2中的默認編碼為ascii碼,asscii編碼是應用于拉丁字母的編碼系統,程序內用中文常導致出現編碼問題。6.range
Python2中的range(0,10)是一個列表 Python3中的range(0,10)是一個可迭代對象 Python2中的xrange和Python3中的range是一樣的,都是一個可迭代對象 Python2代碼: L=range(0,10) print(L)結果: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]Python3輸入相同的代碼其結果: range(0, 10)如果想使用python3想顯示和python2同樣結果需要代碼: L=list(range(0,10)) print(L)7.整型
在Python3中所有的整數都是int類型,在Python3不存在long類型 但在Python2中如果數據量比較大. 會使用long類型(長整型)8.生成器中next()用法:
Python3中next(g) == g.__next__() Python2中只有next(g) 函數名+()---產生一個生成器 next(g)---啟動生成器9.reduce
Python2.x版本中recude是直接 import就可以的, Python3.x版本中需要從functools這個包中導入10.導入包(import 包)
python2中import包,如果包沒有__init__.py就報錯, python3中import包,包里沒有__init__.py不會報錯(from ... import *不能使用)11.Python的類
在python2x版本中存在兩種類: ?個叫經典類. 在python2.2之前. ?直使?的是經典類. 經典類在基類的根如果什么都不寫.
?個叫新式類. 在python2.2之后出現了新式類. 新式類的特點是基類的根是object類。
python3x版本中只有一種類:
python3中使?的都是新式類. 如果基類誰都不繼承. 那這個類會默認繼承 object
后續持續更新...
轉載于:https://www.cnblogs.com/liubing8/p/11136617.html
總結
以上是生活随笔為你收集整理的Python2与Python3区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 使用反射调用可变参数方法
- 下一篇: Python常见面试题:TCP 协议中的