json模块
Posted python学习过程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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)
以上是关于json模块的主要内容,如果未能解决你的问题,请参考以下文章
json 可视代码工作室Angular with Firebase片段
错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”