Python:Dict

0、运算符

in:检查字典中是否有某个key

 'a' in {'a':1,'b':2}
True

提取其中Key对应的Value:

d={'1':'A','2':'B','3':'C'}

d['2'] #'B'
d.get('2') #'B'

 


1、方法:

方法 说明
dict.clear() 删除dict内的所有元素
dict.copy() 返回一个dict的副本(如果Value有List类型,那么对原始dict的修改可能影响副本)
dict.fromkeys(seq [, val]) 创建一个新dict,以序列seq中的元素作为key,序列val为这些key对应的value
dict.get(key , default=None)

返回指定键的值,如果值不在dict中就返回default指定的值

更方便的方法是dict[key]

dict.has_key(key) 如果key在dict内就返回True,否则False
dict.items() 返回一个list,list中的元素为(key,value)元组
dict.keys() 以dict_keys的形式返回一个dict中的所有key,如果要转化为list,请用list(dict.keys())
dict.values() 以list的形式返回一个dict中的所有value
dict.update(dict2) 将dict2中的key-value更新到dict中
dict.pop(key [, default]) 删除dict中给定key对应的value,返回该value。如果key不存在则返回default的值
dict.popitem() 返回并删除dict中的最后一对key、value

2、dict转list

不能直接用强制类型转换list(),这样转换后的结果中只有key没有value

正确做法:

list( dict.items() )

这样转换后的list的形式为[(key1,val1),(key2,val2),...],每个key-value都转化为一个list的一个tuple元素(key , value)

2.5、list转dict

这里的list元素必须是上文提到的那种tuple元素(key , value),可以直接用dict()转换,其他形式的list无法转换

dict([('key',333)])
{'key': 333}

dict([('key',333),('value',666)])
{'key': 333, 'value': 666}

3、遍历字典序列

for key,value in dict.items():
        print(key,value)

 

posted @   ShineLe  阅读(93)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
点击右上角即可分享
微信分享提示