使用sorted对列表和字典 排序

时间:2021-09-21 21:00:11

1.对列表进行排序:


方法一:可以使用列表的sort函数

list00=[2,1,4,2,1,4]
#使用sort()进行排序,sort只能对list进行排序
list11=list00.sort()
print type(list11)
print list00
print list11
输出:

<type 'NoneType'>
[1, 1, 2, 2, 4, 4]
None

结果可知,list00排序后并没有将列表赋值给list11.


方法二:可以使用python内置sorted函数。

list0=[2,1,4,2,1,4]
#使用sorted 进行排序
list1=sorted(list0)
print type(list1)
print list0
print list1
<type 'list'>[2, 1, 4, 2, 1, 4][1, 1, 2, 2, 4, 4]

区别:直接调用list.sort函数,将原有的list更改,并且不能进行赋值,即没有list1=list0.sort()

          sorted仍然可以保留原有的list不改变。

          并且list排序之后的数据结构类型依然是list.

2.对字典进行排序

dict ={"A":2,"Q":4,"B":7,"E":9,"C":1}
#对字典进行排序,按照关键字升序。reverse默认为False,表示升序
#排序的对象,后面的是个匿名函数。
dict=sorted(dict.iteritems(),key=lambda abs:abs[0],reverse=False)
print type(dict)
print dict
输出:

<type 'list'>
[('A', 2), ('B', 7), ('C', 1), ('E', 9), ('Q', 4)]

可以看到在 对字典进行排序后,其数据结构的类型已经由原来的字典变成了list.编写代码过程中注意这一点



方法二:可以使用python内置sorted函数。

相关文章