python中字典一个键可以对应多个值吗_在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 字典中一键对应多个值的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: 在Python 字典中一键对应多个值的实例

本文地址: http://www.cppcns.com/jiaoben/python/251686.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值