python中列表排序,字典排序,列表中的字典排序

一  列表的排序

方法1: 没有返回值 

list1 = [2, 1, 4, 5, 3]
print("最开始数据:{}".format(list1))
# 升序
list1.sort()
print("升序后数据:{}".format(list1))
list1 = [2, 1, 4, 5, 3]
print("最开始数据:{}".format(list1))
# 降序
list1.sort(reverse=True)
print("升序后数据:{}".format(list1))

2.方法2:有返回值

list1 = [2, 1, 4, 5, 3]
print("最开始数据:{}".format(list1))
# 升序
list2 = sorted(list1)
print("升序后数据:{}".format(list2))
list1 = [2, 1, 4, 5, 3]
print("最开始数据:{}".format(list1))
# 降序
list2 = sorted(list1, reverse=True)
print("升序后数据:{}".format(list2))

python中列表排序,字典排序,列表中的字典排序_第1张图片

 

二 字典的排序

方式1:

里面三个参数

dict1.items() #可迭代元素。

key= lambda dict1:dict1[0]  #dict1[0]表示按键,dict1[1]表示按值。

reverse #默认是False,升序排列。当值为True时是降序排列。

按照键进行排序

dict1 = {"name": "Kevin", "age": "27", "gender": "true"}
# 升序
dict2 = sorted(dict1.items(), key=lambda dict1: dict1[0], reverse=False)
print("开始的字典数据:{}".format(dict1))
print("按照键进行升序后的数据:{}".format(dict2))

dict1 = {"name": "Kevin", "age": "27", "gender": "true"}
# 降序
dict2 = sorted(dict1.items(), key=lambda dict1: dict1[0], reverse=True)
print("开始的字典数据:{}".format(dict1))
print("按照键进行降序后的数据:{}".format(dict2))

 

  python中列表排序,字典排序,列表中的字典排序_第2张图片

按照值进行排序

dict1 = {"name": "Kevin", "age": "27", "gender": "true"}
# 升序
dict2 = sorted(dict1.items(), key=lambda dict1: dict1[1], reverse=False)
print("开始的字典数据:{}".format(dict1))
print("按照值进行升序后的数据:{}".format(dict2))

dict1 = {"name": "Kevin", "age": "27", "gender": "true"}
# 降序
dict2 = sorted(dict1.items(), key=lambda dict1: dict1[1], reverse=True)
print("开始的字典数据:{}".format(dict1))
print("按照值进行降序后的数据:{}".format(dict2))

 

  python中列表排序,字典排序,列表中的字典排序_第3张图片

 

三 包含字典dict的列表list的排序方法

方法1:使用 operator进行排序

import operator

list1 = [{'name': 'Kevin', 'age': 27}, {'name': 'Ling', 'age': 23}]
# 升序
list2 = sorted(list1, key=operator.itemgetter('age'))
print("开始列表:{}".format(list1))
print("升序后列表:{}".format(list2))

# 降序
list2 = sorted(list1, key=operator.itemgetter('age'), reverse=True)
print("开始列表:{}".format(list1))
print("降序后列表:{}".format(list2))

  python中列表排序,字典排序,列表中的字典排序_第4张图片

方法1:使用 lambda 进行排序

  

list1 = [{'name': 'Kevin', 'age': 27}, {'name': 'Ling', 'age': 23}]
# 升序
list2 = sorted(list1, key=lambda list1: list1["age"])
print("开始列表:{}".format(list1))
print("升序后列表:{}".format(list2))

# 降序
list2 = sorted(list1, key=lambda list1: list1["age"], reverse=True)
print("开始列表:{}".format(list1))
print("降序后列表:{}".format(list2))

 python中列表排序,字典排序,列表中的字典排序_第5张图片

你可能感兴趣的:(python语法,python,排序,列表,字典)