常用方法
json.dumps()用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数.
语法:
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
json.loads()用于将str类型的数据转成dict.
语法:
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
json.dump()用于将dict类型的数据转成str,并写入到json文件中
json.load()用于从json文件中读取数据
示例
import json
name_emb = {'a': '1111', 'b': '2222', 'c': '3333', 'd': '4444'}
emb_filename = ('/Users/xx/test/python_lib_test/test/test.json')
# solution 1 写入文件
# jsObj = json.dumps(name_emb)
# with open(emb_filename, "w") as f:
# f.write(jsObj)
# solution 2
# json.dump(name_emb, open(emb_filename, "w"))
# 读取文件
jsObj = json.load(open(emb_filename))
print(jsObj) # {'a': '1111', 'b': '2222', 'c': '3333', 'd': '4444'}
print(type(jsObj)) # <class 'dict'>
for key in jsObj.keys():
print(
'key: %s value: %s' % (key, jsObj.get(key))
) # key: a value: 1111 key: b value: 2222 key: c value: 3333 key: d value: 4444