Python之字典

1. 字典的创建

在python中字典又一个非常重要的数据类型和数据结构,它是另一种可变容器类型,可以储存任意类型的对象。
在python中字典是以键和值的形式存在的,即key:value;键和值用冒号:分开,一个key:value又叫一个键值对,每个键值对用逗号 ,隔开,所有的键值对都用一个大括号括{}括起来,如下

dict = {key1:value1,key2:value2,key3:value3,...,keyn:valuen}

在创建字典时要注意字典的以下特性:

  • 字典的键必须是唯一的,当有同名的键时,值以后者为正确
    在这里插入图片描述
  • 字典的键必须是不可变的,所以一般数字,字符串或者元组作为字典的键,而像列表这种则不可以

2 . 字典操作

2.1 通过访问键来取值
在这里插入图片描述
2.2 增加、删除
增加,在增加时如原字典里已有该键名时,执行增加操作就会覆盖键原来的值,如下
在这里插入图片描述
删除一个键时用pop()方法,会返回被删除的值
在这里插入图片描述
2.3 修改键值,将要修改的值直接赋值给相应的键即可
在这里插入图片描述

2.4 合并字典
合并字典用update(dict)方法。在合并时如果被合并的字典有键与原字典键相同,则原字典键值将被更新
在这里插入图片描述

3. 遍历字典

在遍历前先看一个字典的方法dict.items():他的作用是将字典里面的键值对以为元组形式放到列表中,并返回这个列表,如下
在这里插入图片描述
3.1 遍历所有的键值对
利用items()进行遍历
在这里插入图片描述
3.2 遍历键,值
遍历键用keys()方法,遍历值用values()方法,作用和items()方法差不多,这里是将对应的键,值存放到列表中
在这里插入图片描述
在这里插入图片描述

4. 嵌套

4.1 字典与列表嵌套
嵌套一个langue列表,并访问列表里面的值
在这里插入图片描述
在这里插入图片描述
其中dic[‘langue’]返回的值键langue的值,它的值是一个列表,所以dic.langue[‘langue’][2]访问的列表里面的第三个值,即PHP
4.2 字典与字典的嵌套
嵌套一个‘其他’键值对
在这里插入图片描述
访问跟上面列表嵌套差不多
在这里插入图片描述

5.字典常用函数和方法

内置函数:

  • len(dict):返回字典中键值对的个数
  • type(variable):判断变量variable的类型
    在这里插入图片描述
    字典的常用方法:
  • dict.items():这个在上面已经说过了,以列表返回可遍历的(键, 值) 元组数组
  • dict.get(key,default=None):返回指定键的值,如果键不在字典中返回 default 设置的默认值
  • dic.setdefault(key,default=None):和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
    在这里插入图片描述
  • dict.keys():返回一个迭代器,可以使用 list() 来转换为列表
  • dic.values():返回一个迭代器,可以使用 list() 来转换为列表
    在这里插入图片描述
    其他方法:
  • dic.clear():删除字典内所有元素
  • dic.copy():返回一个字典的浅复制
  • dic.pop(key,default):删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

6.字典排序

可以用内置排序函数sorted()来对字典进行排序,格式如下

sorted(dict.items(), key=lambda x:x[0],reverse=False)

其中key=lambda x:x[0]是按键进行排序,key=lambda x:x[1]是按值进行排序;可以调整reverse的值进行升序或者降序,默认reverse=False,升序。

  • 按key进行排序
    在这里插入图片描述
  • 按value进行升序排序
    在这里插入图片描述
  • 按value进行降序排列
    在这里插入图片描述
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值