字典三种遍历方法和排序方法

字典遍历方法挺多,我总结了以下比较常见的三种:
1、用dict.keys()遍历
用dict.keys()方法会返回一个类型为dict_keys的序列类型,里面有字典的key,然后遍历即可

2、有dict.values()遍历
类似的,会返回字典的所有value值组成的一个序列,类型为dict_values,

3、用dict.items()遍历
会返回一个由key和value组成的一个个成对数据,通常同时获得二者:

for key,value in dict.tems();
		print(key,value)

4、直接遍历key
这个方法不太常用,而且容易引起误解。其实直接拿一个任意变量遍历字典,其实默认就是遍历他的key:
for x in a:
print(x)
1
3
5
前面三个比较清晰,容易理解记忆。

字典排序方法:
1、对字典key进行排序

		a={'a':1,'G':9,'c':6,'D':7}
		sorted(a.keys())
			['D','G','a','c']

2、对字典value进行排序

sorted(a.values())
		[1,6,7,9]

3、对key—value对进行排序,可以自己选择根据key还是根据value值排序

	sorted(a.items(),key=lambda x:x[1],reverse=True)
			[('G':9),('D':7),('c':6),('a':1)]

其中x[1]表示根据元组中的第二个值,即value值进行排序,可以修改x[0],x[1],reverse=True/False来满足不同的排序需求。注意其中lambda 后面的x就是指前面那个序列的元素,不管那个序列里的元素是数字,字符串,或者包含一对key-value的元组,他都照常取来,说白了x就是遍历匿名函数前面的序列,把序列中的元素一个一个拿来做参数,再根据后面的的表达式(比如说是x,x**2, x[0]等)来比较、排序。(最后返回的不是表达式值,还是元素本身。)

  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值