python中字典可以一键多值,也就是意味着一个键可以对应多个值。

例:

#encoding=utf-8

 

print '中国'

 

#字典的一键多值

 

print'方案一 list作为dict的值 值允许重复' 

 

d1={}

key=1

value=2

d1.setdefault(key,[]).append(value)

value=2

d1.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=1

keyin=2

value=11

d1.setdefault(key,{})[keyin]=value

keyin=2

value=22

d1.setdefault(key,{})[keyin]=value

keyin=3

value=33

d1.setdefault(key,{})[keyin]=value

 

print d1

 

print '方案二 获取值'

print list(d1[key])

 

print '方案二 删除值,会留下一个空列表'

del d1[key][keyin]

keyin=2

del d1[key][keyin]

print d1

 

print '方案二 检查是否还有一个值'

print d1.get(key,())

 

print '方案三 使用set作为dict的值 值不允许重复'

d1={}

key=1

value=2

d1.setdefault(key,set()).add(value)

value=2

d1.setdefault(key,set()).add(value)

value=3

d1.setdefault(key,set()).add(value)

 

print d1

 

print '方案三 获取值'

print list(d1[key])

 

print '方案三 删除值,会留下一个空列表'

d1[key].remove(value)

value=2

d1[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字典一键多值的全部实例代码,感谢大家的学习和对的支持。

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。