JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集,采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。JSON采用键值对的形式表示数据,可以嵌套结构来表示复杂的数据。
Python中的dict
(字典)是一种可变的、无序的键值对集合,使用大括号 {}
表示。字典中的键必须是唯一的,且不可变的数据类型(如字符串、数字或元组),而值可以是任意数据类型。
假设我们有一个嵌套的JSON字符串,我们想要将其转换为Python的字典,并基于嵌套列创建多行。
import json
# 嵌套的JSON字符串
json_str = '''
{
"name": "John",
"age": 30,
"address": {
"street": "123 Main St",
"city": "Anytown",
"zipcode": "12345"
},
"contacts": [
{"type": "email", "value": "john@example.com"},
{"type": "phone", "value": "555-1234"}
]
}
'''
# 将JSON字符串转换为Python字典
data_dict = json.loads(json_str)
# 打印转换后的字典
print(data_dict)
# 基于嵌套列创建多行
for key, value in data_dict.items():
if isinstance(value, dict):
print(f"{key}:")
for sub_key, sub_value in value.items():
print(f" {sub_key}: {sub_value}")
elif isinstance(value, list):
print(f"{key}:")
for item in value:
print(f" {item}")
else:
print(f"{key}: {value}")
json.loads()
函数将JSON字符串转换为Python字典。通过这种方式,你可以轻松地将嵌套的JSON字符串转换为Python字典,并基于嵌套列创建多行输出。
领取专属 10元无门槛券
手把手带您无忧上云