解析本地檔案中的Json檔案時,json.loads 之後的傳回類型是str ,直接上代碼
import json
with open ("urlJson.txt",'r',encoding='utf-8') as f:
data = f.read()
json_str = json.dumps(data)
print (type(json_str))
#print("Python 原始資料:", repr(data))
#print("JSON 對象:", json_str)
params_json = json.loads(json_str)
#print (params_json)
print (type(params_json))
運作結果:
Process finished with exit code 0
對此很困惑,看到很奇怪,網上到處都是提示loads 傳回的是dict對象。
解決方案:
再loads一次就好了
import json
with open ("urlJson.txt",'r',encoding='utf-8') as f:
data = f.read()
json_str = json.dumps(data)
print (type(json_str))
#print("Python 原始資料:", repr(data))
#print("JSON 對象:", json_str)
params_json = json.loads(json_str)
#print (params_json)
print (type(params_json))
# 再次loads 下
params_json = json.loads(params_json)
print (type(params_json))
執行結果:
Process finished with exit code 0
參考: