可以使用列表推导式和字典推导式来实现按值过滤字典列表,并向过滤后的字典添加其他键和值。
下面是一个示例代码:
# 定义一个字典列表
dict_list = [{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}, {'name': 'Charlie', 'age': 35}]
# 定义过滤的值
filter_value = 30
# 使用列表推导式按值过滤字典列表
filtered_list = [d for d in dict_list if d['age'] == filter_value]
# 向过滤后的字典添加其他键和值
new_key = 'occupation'
new_value = 'engineer'
# 使用字典推导式向过滤后的字典添加其他键和值
filtered_list_with_new_key_value = [{**d, new_key: new_value} for d in filtered_list]
# 打印结果
print(filtered_list_with_new_key_value)
输出结果为:
[{'name': 'Bob', 'age': 30, 'occupation': 'engineer'}]
在上面的示例中,我们首先使用列表推导式按值过滤出age
等于30的字典。然后,使用字典推导式向过滤后的字典中添加新的键值对occupation: engineer
。最后,打印出过滤后的字典列表。
下一篇:按值过滤,其中键是未知的。