Python 字典中一键对应多个值
2014-06-26 18:03
351 查看
#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 字典中一键对应多个值
- 004_015 Python 字典的一键多值,即一个键对应多个值
- Python 字典的一键多值,即一个键对应多个值
- python修改字典内key对应值的方法
- python 取出字典中对应键的值
- python一键对应多个值
- Python中获取字典中value的最大值所对应的键的方法
- python修改字典内key对应值的方法
- Python中获取字典中最值对应的键
- Python字典循环添加一键多值用法
- [python]字典的一键多值
- Python把对应格式的csv文件转换成字典类型存储脚本
- Python中获取字典中最值对应的键
- python如何给字典的键对应的值为字典项的字典赋值
- [Python字典]根据字典的值查询出对应的键——实例
- python 数据库查询为字典是取对应的值
- Python字典中一键多值时,key和val互换
- Python把对应格式的csv文件转换成字典类型存储脚本
- Python的字典操作