python模块 — json

在Python中,有一个内置的json模块用于处理JSON数据。通过该模块,可以将Python对象转换为JSON格式的字符串,也可以将JSON格式的字符串转换为Python对象。

json模块提供了loads()和dumps()函数来实现JSON和Python之间的转换。loads()函数将JSON格式的字符串转换为Python对象,dumps()函数将Python对象转换为JSON格式的字符串。

JSON(JavaScript Object Notation)是一种用于存储和交换数据的轻量级数据交换格式。JSON由键值对构成,键和值之间使用冒号分隔,键值对之间使用逗号分隔,并且整个结构包含在花括号中。

1、json.dumps()

json.dumps() 函数用于将Python对象序列化为JSON字符串。

以下是使用json.dumps()的示例:

import json

data = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

# 将Python对象转换为JSON格式的字符串
json_str = json.dumps(data)
print(json_str)

注意:

1、字典的单引号会被转换为双引号的JSON字符串。

2、将Python对象序列化为JSON格式时,json.dumps默认会将非ASCII字符转义为Unicode转义序列。如果希望中文字符不被转义,可以通过设置ensure_ascii参数为False来实现。

import json

# 创建一个Python对象
data = {
    "censusAddr": "南京市"
}

json_data = json.dumps(data)
print(json_data)  # {"censusAddr": "\u5357\u4eac\u5e02"}

# 将Python对象序列化为JSON字符串,并设置ensure_ascii参数为False
json_str = json.dumps(data, ensure_ascii=False)
print(json_str)  # {"censusAddr": "南京市"}

 2、json.dump()

json.dump()函数用于将Python对象转换为JSON格式的字符串,并将其写入文件中。

以下是使用json.dump()的示例:

import json

data = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

# 将Python对象转换为JSON格式的字符串,并写入文件
with open("data.json", "w") as file:
    json.dump(data, file)

3、json.loads()

json.loads()函数用于将JSON字符串反序列化为Python对象

以下是使用json.loads()的示例:

import json

json_str = '{"name": "John", "age": 30, "city": "New York"}'

# 将JSON格式的字符串转换为Python对象
data = json.loads(json_str)
print(data)

4、json.load()

json.load()函数用于从文件中读取JSON格式的数据,并将其转换为Python对象。

以下是使用json.load()的示例:

import json

# 从文件中读取JSON格式的数据并转换为Python对象
with open("data.json", "r") as file:
    data = json.load(file)
    print(data)

5、json.dumps和json.dump的区别

`json.dumps()`和`json.dump()`都是Python中json模块提供的用于将Python对象转换为JSON格式数据的函数,但它们之间有一些重要的区别。

1. `json.dumps()`: 这个函数用来将Python对象转换为JSON格式的字符串。它接受一个Python对象作为参数,并返回一个包含JSON格式数据的字符串。

2. `json.dump()`: 这个函数用来将Python对象转换为JSON格式的数据,并将结果写入文件中。它接受两个参数,第一个是Python对象,第二个是文件对象。它将JSON格式的数据写入指定的文件中。

6、json.loads和json.load的区别

`json.loads()`和`json.load()`都是Python中json模块提供的用于将JSON格式数据转换为Python对象的函数,但它们之间有一些重要的区别。

1. `json.loads()`: 这个函数用来将JSON格式的字符串转换为Python对象。它接受一个包含JSON格式数据的字符串作为参数,并返回相应的Python对象。

2. `json.load()`: 这个函数用来读取包含JSON格式数据的文件,并将其转换为Python对象。它接受一个文件对象作为参数,并返回相应的Python对象。


reference:

json --- JSON 编码和解码器 — Python 3.8.17 文档

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值