以下是一个示例代码解决方案,用于按属性值过滤对象:
# 定义一个对象列表
objects = [
{"name": "Alice", "age": 25, "gender": "female"},
{"name": "Bob", "age": 30, "gender": "male"},
{"name": "Charlie", "age": 35, "gender": "male"},
{"name": "Dave", "age": 40, "gender": "male"},
{"name": "Eve", "age": 45, "gender": "female"}
]
# 定义一个过滤函数,根据属性值过滤对象
def filter_objects(objects, attribute, value):
filtered_objects = []
for obj in objects:
if obj.get(attribute) == value:
filtered_objects.append(obj)
return filtered_objects
# 调用过滤函数,按属性值过滤对象列表
filtered_objects = filter_objects(objects, "gender", "male")
# 输出过滤结果
for obj in filtered_objects:
print(obj)
上述代码中,首先定义了一个对象列表 objects
,其中包含了多个对象,每个对象都有不同的属性。然后定义了一个过滤函数 filter_objects
,该函数接受三个参数:对象列表 objects
、属性名 attribute
和属性值 value
。函数通过遍历对象列表,判断每个对象的指定属性值是否等于给定的属性值,如果相等则将该对象添加到结果列表中。最后调用过滤函数,传入对象列表、属性名和属性值,得到按属性值过滤后的对象列表 filtered_objects
。
上一篇:按属性值对数组进行排序的错误
下一篇:按属性值过滤对象数组