Python 字典中一键对应多个值
Python 字典中一键对应多个值
#encoding=utf-8 print '中国'#字典的一键多值 print'方案一 list作为dict的值 值允许重复'd1={} key=1value=2d1.setdefault(key,[]).append(value) value=2d1.setdefault(key,[]).append(value) print d1 #获取值 print '方案一 获取值'print list(d1[key]) print '方案一 删除值,会留下一个空列表'd1[key].remove(value) d1[key].remove(value) print d1 print '方案一 检查是否还有一个值'print d1.get(key,[]) print '方案二 使用子字典作为dict的值 值不允许重复'd1={} key=1keyin=2value=11d1.setdefault(key,{})[keyin]=value keyin=2value=22d1.setdefault(key,{})[keyin]=value keyin=3value=33d1.setdefault(key,{})[keyin]=value print d1 print '方案二 获取值'print list(d1[key]) print '方案二 删除值,会留下一个空列表'del d1[key][keyin] keyin=2del d1[key][keyin] print d1 print '方案二 检查是否还有一个值'print d1.get(key,()) print '方案三 使用set作为dict的值 值不允许重复'd1={} key=1value=2d1.setdefault(key,set()).add(value) value=2d1.setdefault(key,set()).add(value) value=3d1.setdefault(key,set()).add(value) print d1 print '方案三 获取值'print list(d1[key]) print '方案三 删除值,会留下一个空列表'd1[key].remove(value) value=2d1[key].remove(value) print d1 print '方案三 检查是否还有一个值'print d1.get(key,()) 打印结果:
中国
方案一 list作为dict的值 值允许重复
{1: [2, 2]}
获取值
[2, 2]
删除值,会留下一个空列表
{1: []}
检查是否还有一个值
[]
方案二 使用子字典作为dict的值 值不允许重复
{1: {2: 22, 3: 33}}
获取值
[2, 3]
删除值,会留下一个空列表
{1: {}}
检查是否还有一个值
{}
方案三 使用set作为dict的值 值不允许重复
{1: set([2, 3])}
获取值
[2, 3]
删除值,会留下一个空列表
{1: set([])}
检查是否还有一个值
set([])
Python 的详细介绍:请点这里
Python 的下载地址:请点这里
相关推荐
dflyzx 2020-09-17
higheels 2020-07-20
Ericbig 2020-07-19
yinyang00 2020-05-15
lijiuchangxin 2020-05-14
yogoma 2020-05-09
jacktangj 2020-04-19
Yyqingmofeige 2020-03-26
idning 2020-02-14
宿舍 2020-01-31
luenxin 2020-01-22
水痕 2020-01-18
chouliqingke 2020-01-08
secondid 2019-12-18
XCodeRush 2019-12-17
ryuhfxz 2019-11-20
qonsnow 2014-03-07
coulder 2019-11-17