Python 编码为 JSON 类型转换对应表:
Python | JSON |
dict | object |
list, tuple | array |
str | string |
int, float, int- & float-derived Enums | number |
True | true |
False | false |
None | null |
JSON 解码为 Python 类型转换对应表:
JSON | Python |
object | dict |
array | list |
string | str |
number (int) | int |
number (real) | float |
true | True |
false | False |
null | None |
json.dumps 将 Python 对象编码成 JSON 字符串
json.loads 将已编码的 JSON 字符串解码为Python 对象
importjson,os
data={
'name':'zzj',
'id':'01'
}
json_str = json.dumps(data) #bian ma
print ("Python:", repr(data))
print ("JSON对象:", json_str)
json_p=json.loads(json_str) print(json_p['name'])
输出:
Python 原始数据: {'name': 'zzj','id': '01'}
JSON 对象:{"name": "zzj", "id": "01"}
zzj
json.dump() 把json 数据写入文件
json.load() 把json 文件数据读入python
import json,os f=open("./test.json",'w+') json.dump(data,f) #read json file f=open("./内置模块JSON/test.json",'r+') data1=json.load(f) print(data1['name'])
对象转化为json
import json class person(object): def __init__(self,name,age,sex): self.name=name; self.age=age self.sex=sex def fun1(self,sex): pass p=person('zhangsan',22,'m') p_s=json.dumps(p,default=lambda obj:obj.__dict__) print(p_s)
输出:{"name": "zhangsan", "age": 22,"sex": "m"}