搜索
写经验 领红包
 > 房产

pytho字典操作(字典用法pytho)

导语:python字典操作全家桶,超全!!,字典相关操作都来这儿找

python 字典 操作(字典用法python)

python中字典相关操作,在实际开发中是必不可少的部分,除了它本身可以构造、存储数据外,它的结构和json类似,还可以互转。

在web开发、数据库查询结果集等都是以json或者字典形式存在,因此掌握字典相关操作是一个开发人员必备技能,下面的总结,按需获取,复制运行即可得出相应结果

1、创建字典(create)

 ====================基础创建=====================dict_ = {}  34;key1&34;value1&39;key2&39;value2& 赋值创建带默认值的字典--->创建默值字典最常用dict_key = dict(key1=&34;,key2=&34;)   34;key1&34;key2&34;key3&34;6666& fromkeys创建  使用较少====================中高级创建======================list_ = [(&34;,&34;),(&34;,&34;)]   dict_list = dict(list_)    34;value%s& 字典解析创建字典--->常用====================实际开发中常用构造================list1,list2 = [&34;,&34;,&34;],[18,&34;,&34;]dict_advance2 = { key:value for key,value in zip(list1,list2) }  最常用,代码短又简单,zip中防止可迭代对象即可,列表、元祖,字符串均可执行上面代码后输出:{}{&39;: &39;, &39;: &39;}{&39;: &39;, &39;: &39;}{&39;: &39;, &39;: &39;, &39;: &39;}{&39;: &39;, &39;: &39;}{&39;: &39;, &39;: &39;, &39;: &39;, &39;: &39;, &39;: &39;}{&39;: 18, &39;: &39;, &39;: &39;}{&39;: 18, &39;: &39;, &39;: &39;}

2、字典新增元素(add)

dict_[&34;] = 18       34;name&34;张三& dict中update 方式新增--->常用dict_.update(value)

3、字典删除元素(del)

dict_ = {&39;: 18, &39;: &39;, &39;: &39;} =======================根据key 删除元素=================del dict_[&34;]    34;address&升级版删除--->最常用dict_ = { key:value for key,value in dict_.items() if key != &34; }   通过字典解析删除,--->最常用,一般封装成方法使用输出:{ &39;: &39;, &39;: &39;}  =======================删除、清空字典=================dict_ = {&39;: 18, &39;: &39;, &39;: &39;}del  dict_        清空字典中的所有key=value  --->不常用    

3、字典修改元素(modify)

dict_ = {&39;: 18, &39;: &39;, &39;: &39;}=======================修改字典值=================dict_[&34;] = 19     --->最常用输出:{&39;: 19, &39;: &39;, &39;: &39;}=======================修改字典key================dict_.update({&34;:dict_.pop(&34;)})   39;address&39;重庆&39;name&39;张三&39;newkey&39;age&39;address&39;重庆&39;name&39;张三&返回值是列表  --->常用print(keys)输出:[&39;, &39;, &39;]=======================获取字典中所有value================keys = list(dict_.values())    39;重庆&39;张三&39;age&39;address&39;重庆&39;name&39;张三&34;age& key 不存在是会报错   --->常用value2 = dict_.get(&34;,None)  34;fff& 演示key不存在这种默认值 --->最常用,也是建议使用value4 = &34;.join([ str(dict_[key]) for key in dict_.keys() if key==&34; ])  34;重庆& 采用字典解析,key,value互换生成新的字典在获取值,一般封装成方法使用key2 = [ key for key,value in dict_.items() if value==&34; ][0] 34;&34;重庆& 采用列表解析获取key,一般封装成方法使用print(key1,key2,key3)输出:address address address

5、字典排序(order)

======================根据key排序===================  dict_ = {&39;: 18, &39;: &39;, &39;: &39;}new_dict1 = dict(sorted(dict_.items()))   通过dict_.keys()获取所以key,在key祖排序,字典解析生成字典print(new_dict1)print(new_dict2)输出{&39;: &39;, &39;: &39;, &39;: 18}{&39;: &39;, &39;: &39;, &39;: 18}======================根据value排序===================    d = {&39;: 18, &39;: 88, &39;: 66,&39;: 22}①new_order1 ={ va_ke[1]:va_ke[0] for va_ke in sorted( [(va,ke) for ke,va in sorted(d.items())])}②new_order2 ={ va_ke[1]:va_ke[0] for va_ke in sorted(zip(d.values(),d.keys()))}③new_order3 ={ key:va for key,va in sorted(d.items(),key=lambda items:items[1])}print(new_order1)print(new_order2)print(new_order3)输出:{&39;: 18, &39;: 22, &39;: 66, &39;: 88}{&39;: 18, &39;: 22, &39;: 66, &39;: 88}{&39;: 18, &39;: 22, &39;: 66, &39;: 88}解释:①通过列表解析 [(va,ke) for ke,va in sorted(d.items())] 生成元祖(value,key)元祖,在给元祖排序,在用字典解析生成字典②先通过(d.values(),d.keys())组装(value,key),在吧元祖压缩成一个列表,给列表排序,在用字典解析生成字典③利用sorted可以指定排序关键字的原理,指定以value进行排序,先通过d.items()获取key,value的迭代对象,然后通过key,指定排序关键字为value,sorted中指定排序关键字需要绑定函数,因此用lambda获取value

好了,相信你看了上面内容,慢慢练习,python的字典操作对你来说 so easy!,对了基本有关python字典相关的面试题你都能答出。

点赞收藏,忘记了就翻出来瞧瞧,慢慢的 它就是你的咯!

有看不懂的地方,,欢迎留言咨询,有问必答,相互学习,合作共赢~~~

本文内容由小彤整理编辑!