Python2的標准數據類型有:
Numbers (數字)
String (字符串)
List (列表)
Tuple (元組)
Dictionary (字典)
Python3的標准數據類型有:
Number (數字)
String (字符串)
List (列表)
Tuple (元組)
Set (集合)
Dictionary (字典)
Python支持四種不同的數字類型:
int (有符號整型)
long (長整型[也可以代表八進制和十六進制])
float (浮點型)
complex (復數)
Python2和python3的區別:
1)print 函數
2)Unicode
3)除法運算
python2中的除法
>>> 1 / 2 結果為:0
>>> 1.0 / 2.0 結果為:0.5
Python3中的除法
>>> 1/2 結果為:0.5
4)異常
在 Python 3 中處理異常也輕微的改變了,在 Python3中我們現在使用as作為關鍵詞
捕獲異常的語法由except exc, var 改為 except exc as var
5)xrange
6)八進制字面量表示
八進制數必須寫成0o777,原來的形式0777不能用了,二進制必須寫成0b111,新增了一個bin()函數用於將一個整數轉換成二進制字串.Python 2.6已經支持這兩種語法
在Python 3.x中,表示八進制字面量的方式只有一種,就是0o1000
7)不等運算符
Python 2.x中不等於有兩種寫法 != 和 <>
Python 3.x中去掉了<>,只有!=一種寫法,還好,我從來沒有使用<>的習慣
8)去掉了repr表達式`` # ``在Python2中獨有
Python 2.x 中反引號``相當於repr函數的作用
Python 3.x 中去掉了``這種寫法,只允許使用repr函數,這樣做的目的是為了使代碼看上去更清晰么?不過我感覺用repr的機會很少,一般只在debug的時候才用,多數時候還是用str函數來用字符串描述對象
9)數據類型
Py3.X去除了long類型,現在只有一種整型——int,但它的行為就像2.X版本的long
新增了bytes類型,對應於2.X版本的八位串,定義一個bytes字面量的方法如下:
>>> b = b'china'
>>> type(b)
<type 'bytes'>
字典和json格式的區別:
字典結構
a = {
'a':'1',
'b':'2',
'c':'3'
}
json格式
{
"studentInfo":
{
"id":123456,
"stu_name":"Dorra"
}
}
大致看法:
從結構上看都是"Key":"Value"的形式
但是從本質上講,字典是一種數據結構,而json是一種結構化數據的標准格式;字典有很多內置函數,有多種調用方法,
而json並不像字典具備操作性,並在格式上就會有一定的限制
字典和json的區別:
1)字典中字符串用單引號,json強制規定雙引號
2)字典的key可以是單引號,json強制規定key是雙引號
3)字典里可以嵌套tuple,json不能,json只能寫json.dumps({1:2})
4)json: true false null; python:True False None
Python中提供了json.loads()轉換函數,方便json數據的調用