python 解析JSON数据并获取所有不包含子节点的元素
时间: 2023-12-20 17:06:24 浏览: 33
可以使用Python中的json库来解析JSON数据,然后使用递归遍历所有的节点,找到不包含子节点的元素。
以下是示例代码:
```
import json
def find_leaf_node(data):
if isinstance(data, dict):
for key, value in data.items():
if not isinstance(value, (dict, list)):
print(key + ":", value)
else:
find_leaf_node(value)
elif isinstance(data, list):
for item in data:
find_leaf_node(item)
# 示例JSON数据
json_str = """
{
"name": "John Smith",
"age": 30,
"address": {
"street": "123 Main St",
"city": "Anytown",
"state": "CA"
},
"phone_numbers": [
"555-1234",
"555-5678"
]
}
"""
# 解析JSON数据并查找所有叶子节点
data = json.loads(json_str)
find_leaf_node(data)
```
输出结果:
```
name: John Smith
age: 30
street: 123 Main St
city: Anytown
state: CA
555-1234
555-5678
```