python對象轉換成json對象,以及json對象轉換成python對象

  1. JSON支持的數據格式
  • 對象(字典)。使用花括號
  • 數組(列表)。使用方括號
  • 整形,浮點型,布爾類型還有null類型
  • 字符串類型(字符串必須要用雙引號,不能用單引號)
  1. 多個數據之間用逗號隔開,josn的本質就是一個字符串
  2. 把python對象轉換成JSON對象:
  • json.dumps()
import json

stu = [
    {'name':'Alice', 'age':18},
    {'name':'Bob','age':20},
]

json_stu = json.dumps(stu)
print(type(json_stu))
print(json_stu)
輸出:
<class 'str'>
[{"name": "Alice", "age": 18}, {"name": "Bob", "age": 20}]
#單引號被轉換成了雙引號,類型變成了字符串
  • json.dump():可以將python對象轉換成json對象的同時傳入一個指針用於寫文件操作
import json

stu = [
    {'name': '雲袖', 'age': 18},
    {'name': 'Bob', 'age': 20},
]

#json在dump的時候只能存放ascii字符,因此會將中文進行轉義,這時候我們可以使用ensure_ascii=False關閉這個特性。
with open('stu.json', 'w', encoding='utf-8') as f:
    json.dump(stu, f, ensure_ascii=False)
  1. 把JSON對象轉換成python對象
  • json.loads()
import json

json_stu ='[{"name": "雲袖", "age": 18}, {"name": "Bob", "age": 20}]'
stu = json.loads(json_stu)
print(stu)
輸出:
[{'name': '雲袖', 'age': 18}, {'name': 'Bob', 'age': 20}]
  • json.load()從文件中讀取JSON轉換成python對象
import json

with open('stu.json', 'r', encoding='utf-8') as f:
    stu = json.load(f)
print(type(stu))
print(stu)
輸出:
<class 'list'>
[{'name': '雲袖', 'age': 18}, {'name': 'Bob', 'age': 20}]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章