json库是python内置得几个常用库之一。简单记录下基本用法。
file = 'test.json'
obj = {'name': '小明', 'male': True, 'age': 12}
score = {'数学': 98, '语文': 99}
obj['score'] = score
address = ["北京", "西城"]
obj['address'] = address
with open(file, 'w') as f:
f.write(json.dumps(obj))
with open(file, 'r') as f:
data = json.loads(f.read())
print(data)
# {'name': '小明', 'male': True, 'age': 12, 'score': {'数学': 98, '语文': 99}, 'address': ['北京', '西城']}
print(data['name'])
# 小明
print(data['score']['数学'])
# 98
print(data['address'][0])
# 北京
json
库提供了两个方法,一个读(load
)一个写(dump
)。load
是将json数据转成python的基本数据格式。map->dist, array->list, str->str, num->num, True/False->True/False, null -> None。获得的新对象可以直接按照python对象调用,十分方便。dump
则是反过来。
python的with-as
与Java的try
中打开资源类似,都是由框架帮你完成资源的打开与释放,避免忘记手动进行释放,而造成内存泄漏等问题。