一、什么是 json
1)存在意義
json 就是不同編程語(yǔ)言之間進(jìn)行數(shù)據(jù)交流的一種通用格式
2)json 是一種數(shù)據(jù)格式:一個(gè)json有且只有一個(gè)數(shù)據(jù)
這個(gè)數(shù)據(jù)是json支持的數(shù)據(jù)類型的數(shù)據(jù)
3)json支持的數(shù)據(jù)類型
- 數(shù)字類型,字符串,布爾,數(shù)組,字典(對(duì)象),null
- 數(shù)字類型:所有的數(shù)字
- 字符串:用雙引號(hào)引起來(lái)的文本數(shù)據(jù)(支持轉(zhuǎn)義字符,必須是雙引號(hào))
- 布爾:只有true和false兩個(gè)值
- 數(shù)組:相當(dāng)于Python的列表,[元素1,元素2,元素3,...]
- 字典:相當(dāng)于Python的字典{key1:value1,key2:value2,...}key只能是字符串
- 空值:null(相當(dāng)于None)
二、 json 轉(zhuǎn) Python
| json | python |
|---|---|
| 數(shù)字類型 | 數(shù)字(int/float) |
| 字符串 | 字符串(可能會(huì)將雙引號(hào)變成單引號(hào)) |
| 布爾 | 布爾(true->True,false->False) |
| 數(shù)組 | 列表 |
| 字典 | 字典 |
| 空值 | null->None |
json.loads(字符串) - 將json格式的字符串轉(zhuǎn)換成Python對(duì)應(yīng)的數(shù)據(jù)。(這兒的字符串的內(nèi)容必須滿足json格式)
import json
x=json.loads('"abc"')
print(x,type(x))
z = json.loads('true')
print(z,type(z))
三、python 轉(zhuǎn) json
| python | json |
|---|---|
| int/float | 數(shù)字 |
| 字符串 | 雙引號(hào)的字符串 |
| 布爾 | 布爾(True->true,False->false) |
| 列表和元組 | 數(shù)組 |
| 字典 | 字典 |
| None | null |
#json.dumps(數(shù)據(jù)) 將指定的Python數(shù)據(jù)轉(zhuǎn)換成json格式的字符串
r = json.dumps([122,'asd',True,None,(12,13)])
print(r,type(r))