許多程式要求使用者輸入某些資訊,例如儲存遊戲偏好或提供要視覺化的資料。不管程式關注的是什麼,程式都要將將使用者提供的資訊儲存在列表、字典等資料結構中。當使用者關閉程式時,幾乎總是需要儲存他們提供的資訊;一個簡單的方法是使用模組json來儲存資料。
模組json允許您將一個簡單的Python資料結構轉儲到一個檔案中,並在程式再次執行時載入該檔案中的資料。也可以使用json在Python程式之間共享資料。更重要的是,JSON資料格式不是Python專用,它允許你與使用其他程式語言的人共享以JSON格式儲存的資料。這是一種輕便格式,很有用,也易於學習。
JSON(JavaScript Object Notation)格式最初是為JavaScript開發的,但隨後成了一種常見
格式,被包括Python在內的眾多語言採用。
而json提供了兩個方法,分別是dump儲存檔案和load讀取檔案。
import json
numbers = [2, 3, 5, 7, 11, 13]
filename = 'numbers.json'
with open(filename, 'w') as f_obj:
json.dump(numbers, f_obj)
先將模組json匯入,然後建立一個陣列,最後再將它儲存再numbers.json中
import json
filename = 'numbers.json'
with open(filename) as f_obj:
numbers = json.load(f_obj)
print(numbers)
讀取儲存的資料。
Python不僅提供了json檔案的操作,還提供了json格式轉換的方法;loads():將json字串轉換為字典格式;dumps()將字典格式的資料轉換為json格式;
# 將json字串轉換成字典格式
shuguo = '{"name": "張飛", "age": 45, "sex": "男"}'
print('這是轉換後的資料:',json.loads(shuguo))
print('這是轉換後的資料型別:',type(json.loads(shuguo)))
# 將字典格式資料轉換成json格式
shuguo = {'name': '張飛', 'age': 45, 'sex': '男'}
print('這是將字典轉換之後的資料:',json.dumps(shuguo,ensure_ascii=False))
print('這是將字典轉換之後的資料型別:',type(json.dumps(shuguo,ensure_ascii=False))) # 如果ensure_ascii ' '為false,則返回值可以包含非ascii值
JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式,易於人閱讀和編寫。
本作品採用《CC 協議》,轉載必須註明作者和本文連結