遍历对象中的对象可以使用递归方法来实现。下面是一个示例代码,演示了如何遍历一个包含对象的对象:
def traverse(obj):
# 如果当前对象是字典类型
if isinstance(obj, dict):
for key, value in obj.items():
# 如果值是对象类型,继续遍历
if isinstance(value, (dict, list)):
traverse(value)
else:
print(key, ":", value)
# 如果当前对象是列表类型
elif isinstance(obj, list):
for item in obj:
# 如果列表项是对象类型,继续遍历
if isinstance(item, (dict, list)):
traverse(item)
else:
print(item)
# 示例对象
data = {
"name": "John",
"age": 30,
"address": {
"street": "123 Main St",
"city": "New York",
"state": "NY"
},
"friends": [
{
"name": "Jane",
"age": 28
},
{
"name": "Bob",
"age": 32
}
]
}
# 遍历对象中的对象
traverse(data)
输出结果:
name : John
age : 30
street : 123 Main St
city : New York
state : NY
name : Jane
age : 28
name : Bob
age : 32
这个示例中,通过递归函数traverse
,我们可以遍历包含对象的对象。函数首先检查当前对象的类型,如果是字典类型,则遍历其键值对,如果值是对象类型,则继续递归调用traverse
函数。如果是列表类型,则遍历列表中的每个元素,如果元素是对象类型,则同样递归调用traverse
函数。对于其他基本类型的值,直接打印出来。这样,我们就可以遍历对象中的对象了。
上一篇:遍历对象值
下一篇:遍历对象中的对象数组并搜索一个值