json格式的數據處理(json格式的數據實際上就是json字符串)
json.dumps()和json.loads()是json格式處理函數
json.dumps()函數是將一個Python數據類型列表進行json格式的編碼(可以這么理解,json.dumps()函數是將字典轉化為字符串)
json.loads()函數是將json格式數據轉換為字典(可以這么理解,json.loads()函數是將字符串轉化為字典)
舉例:
import json
data = {
'name' : 'ACME',
'shares' : 100,
'price' : 542.23
}
json_str = json.dumps(data)
data1 = json.loads(json_str)
print(json_str)
print(type(json_str))
print(data1)
print(type(data1))
運行結果:
{"shares": 100, "name": "ACME", "price": 542.23}
<class 'str'>
{'name': 'ACME', 'shares': 100, 'price': 542.23}
<class 'dict'>
json文件處理函數
import json
f_name = 'msginp_10_11.json'
msg_inp = input('請輸入您喜歡的數字:')
with open(f_name,'w') as fn:
json.dump(msg_inp,fn) #實際作用等同於如下兩行
# json_str = json.dumps(msg_inp) #將字符串轉換為json格式
# fn.write(json_str) #將json格式的字符串寫入文件
#read json數據
with open(f_name) as fn1:
c = json.load(fn1)
print('I know your favorite number! It\'s '+ c)