Python函数:如何对列表、元组和字典进行排序
发布时间:2023-07-06 11:21:52
在Python中,可以使用内置的sorted()函数对列表、元组和字典进行排序。sorted()函数可以接受一个可迭代对象作为参数,并返回一个排序后的列表。
对列表进行排序:
my_list = [3, 1, 2, 5, 4] sorted_list = sorted(my_list) print(sorted_list) # 输出 [1, 2, 3, 4, 5]
对元组进行排序:
my_tuple = (3, 1, 2, 5, 4) sorted_tuple = sorted(my_tuple) print(sorted_tuple) # 输出 [1, 2, 3, 4, 5]
对字典进行排序:
my_dict = {'b': 2, 'c': 3, 'a': 1}
# 对字典按照键进行排序
sorted_dict_keys = sorted(my_dict.keys()) # 返回排序后的键列表
print(sorted_dict_keys) # 输出 ['a', 'b', 'c']
# 对字典按照值进行排序
sorted_dict_values = sorted(my_dict.values()) # 返回排序后的值列表
print(sorted_dict_values) # 输出 [1, 2, 3]
# 对字典按照键值对进行排序
sorted_dict_items = sorted(my_dict.items()) # 返回排序后的键值对列表
print(sorted_dict_items) # 输出 [('a', 1), ('b', 2), ('c', 3)]
可以发现,sorted()函数对列表和元组排序时,直接返回一个排序后的列表或元组。而对字典排序时,可以通过sorted()函数对键、值或键值对进行排序,并返回相应的排序后的列表。
此外,可以通过参数reverse=True来实现降序排列,默认情况下是升序排列。例如:
my_list = [3, 1, 2, 5, 4] sorted_list_reverse = sorted(my_list, reverse=True) print(sorted_list_reverse) # 输出 [5, 4, 3, 2, 1]
需要注意的是,sorted()函数不会改变原来的列表、元组或字典,而是返回一个排序后的新对象。如果想在原对象上进行排序,可以使用列表的sort()方法或字典的sorted()方法。
