遍历嵌套对象并修改特定属性的解决方法可以使用递归函数来实现。以下是一个示例代码:
def update_nested_object(obj, target_property, new_value):
if isinstance(obj, dict):
for key, value in obj.items():
if key == target_property:
obj[key] = new_value
elif isinstance(value, (dict, list)):
update_nested_object(value, target_property, new_value)
elif isinstance(obj, list):
for item in obj:
if isinstance(item, (dict, list)):
update_nested_object(item, target_property, new_value)
# 示例数据
data = {
"name": "John",
"age": 30,
"address": {
"street": "123 Main St",
"city": "New York",
"state": "NY"
},
"friends": [
{
"name": "Alice",
"age": 25
},
{
"name": "Bob",
"age": 35
}
]
}
# 将所有名为"age"的属性值修改为40
update_nested_object(data, "age", 40)
print(data)
运行以上代码会将示例数据中所有名为"age"的属性值修改为40。