python 根据条件快速生成一个新的字典

通常处理dict类型的数据的时候,都是需要根绝字典的key来进行操作
在python中,可以通过特定的方法来进行获取

peoples = {
    '广东省': 104303132,
    '山东省': 95793065,
    '河南省': 94023567,
    '四川省': 80418200,
    '江苏省': 78659903,
    '河北省': 71854202,
    '湖南省': 65683722,
    '安徽省': 59500510,
    '湖北省': 57237740,
    '浙江省': 54426891,
    '广西壮族自治区': 46026629,
    '云南省': 45966239,
    '江西省': 44567475,
    '辽宁省': 43746323,
    '黑龙江省': 38312224,
    '陕西省': 37327378,
    '福建省': 36894216,
    '山西省': 35712111,
    '贵州省': 34746468,
    '重庆市': 28846170,
    '吉林省': 27462297,
    '甘肃省': 25575254,
    '内蒙古自治区': 24706321,
    '台湾地区': 23162123,
    '上海市': 23019148,
    '新疆维吾尔自治区': 21813334,
    '北京市': 19612368,
    '天津市': 12938224,
    '海南省': 8671518,
    '香港特别行政区': 7097600,
    '宁夏回族自治区': 6301350,
    '青海省': 5626722,
    '难以确定常住地': 4649985,
    '西藏自治区': 3002166,
    '澳门特别行政区': 552300,
}
#遍历字典peoples中的key和对应的value
for key,value in peoples.items():
    print(key,'---',value)
#配合find方法或者基础运算符,即可对数据进行处理
#只查询key中包含京字的key和value,并生成一个新的dict
peoples2 = {key: value for key, value in peoples.items() if key.find('京') != -1}
print(peoples2)
#只查询value的值大于5千万的key和value,并生成一个新的dict
peoples3 = {key: value for key, value in peoples.items() if value >5000000}
print(peoples3)

你可能感兴趣的:(python学习)