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数据绑定到html元素 (转)

json 可视代码工作室Angular with Firebase片段

vs code 用户代码片段 html.json

错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”

如何有条件地将 C 代码片段编译到我的 Perl 模块?

如何在android中将json数据加载到片段中