Python取出字典某些字段名构成列表

问题描述

例如只要含 ‘answer’ 的字段

d = {
    'answer': None,
    'answer1': None,
    'answer2': None,
    'b': None,
    'c': None
}




解决方案

使用高阶函数 filter, 自定义过滤逻辑,保留的返回 True ,去除的返回 False

d = {
    'answer': None,
    'answer1': None,
    'answer2': None,
    'b': None,
    'c': None
}


def fun(data) -> bool:
    '''自定义过滤逻辑
    
    保留的返回True,去除的返回False
    '''
    return 'answer' in data


print(list(filter(fun, d)))
print(list(filter(lambda x: 'answer' in x, d)))
# ['answer', 'answer1', 'answer2']




参考文献

  1. Python高阶函数——map()和filter()

猜你喜欢

转载自blog.csdn.net/lly1122334/article/details/107223857