大马强 发表于 2022-1-20 22:31:57

cookbook 1.17


在字典中提取子集
问题描述:
        创建一个字典的子集

一、字典推导式
字典推导式 键:值 迭代 判断
datas = {
    "小红": 18,
    "小黄": 19,
    "小蓝": 18,
    "小绿": 23,
    "小青": 21,
    "小白": 14,
    "小紫": 11,
    "小黑": 19
}


over_18 = {k: datas for k in datas if datas >= 18}
print(over_18)
{'小红': 18, '小黄': 19, '小蓝': 18, '小绿': 23, '小青': 21, '小黑': 19}

二、其他方法
#1、先创建元组,再转为字典
test1 = dict((key, value)for key, value in datas.items() if value >= 18)
print(test1)
# 2、集合的方法
test2 = {key: datas for key in datas.keys() & {"小白", "小蓝"}}# 集合的并集
print(test2)

{'小红': 18, '小黄': 19, '小蓝': 18, '小绿': 23, '小青': 21, '小黑': 19}
{'小蓝': 18, '小白': 14}
但是速度都不如第一种

页: [1]
查看完整版本: cookbook 1.17