json模块

json和pickle这两个模块主要适用于序列化,其中:

  • json用于字符串和Python数据类型之间进行转化。
  • pickle用于Python特有的类型和Python的数据类型之间进行转换。

这两个模块都有4个相同的ff,分别是dump、dumps、load和loads.用法完全一样。

1. json.dumps

json.dumps 用于将 Python 对象编码成 JSON 字符串。

data = {'k1':'v1','k2':'v2'}
print(json.dumps(data))  # 序列化
# {"k2": "v2", "k1": "v1"}
print(type(json.dumps(data)))
# <class 'str'>  # 将字典类型转化为str类型

2. json.loads

json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。

json_data = json.dumps(data)
print(json.loads(json_data))
# {'k1': 'v1', 'k2': 'v2'}

print(type(json.loads(json_data)))
# <class 'dict'>  将str类型转化为字典类型

3.json.dump

此函数用于将数据写入到文件中



data = {'k1':'v1','k2':'v2'}

with open('a.json','a') as fp:

    json.dump(data,fp)

 

 4. json.load

把文件打开,并把字符串变换为数据类型

fp = open('a.json','r',encoding='utf-8')
date = json.load(fp)
print(data)

 

posted @ 2018-12-18 21:50  炫风真是风  阅读(154)  评论(0编辑  收藏  举报