欢迎访问宙启技术站
智能推送

Python中的sorted()函数的使用方法及示例

发布时间:2023-06-01 03:27:41

Python中的sorted()函数可以用于对列表、元组、字典等可迭代对象进行排序。下面介绍sorted()函数的使用方法及示例。

1. sorted()函数的基本用法

sorted(iterable, key=None, reverse=False)

参数说明:

iterable:必填参数,表示待排序的可迭代对象,如列表、元组等。

key:可选参数,表示排序规则,可以是一个函数或lambda表达式等,用于指定按哪个属性进行排序,默认为按元素值排序。

reverse:可选参数,表示是否逆序排列,默认为False,表示升序排列。

2. 对列表进行排序

示例代码:

# 升序排列

list1 = [3, 2, 1, 5, 4]

print(sorted(list1))  # 输出 [1, 2, 3, 4, 5]

# 降序排列

list2 = [3, 2, 1, 5, 4]

print(sorted(list2, reverse=True))  # 输出 [5, 4, 3, 2, 1]

# 按字母顺序排列

list3 = ['apple', 'banana', 'pear', 'orange']

print(sorted(list3))  # 输出 ['apple', 'banana', 'orange', 'pear']

# 按字符串长度排列

list4 = ['apple', 'banana', 'pear', 'orange']

print(sorted(list4, key=len))  # 输出 ['pear', 'apple', 'banana', 'orange']

3. 对元组进行排序

示例代码:

# 升序排列

tuple1 = (3, 2, 1, 5, 4)

print(sorted(tuple1))  # 输出 [1, 2, 3, 4, 5]

# 降序排列

tuple2 = (3, 2, 1, 5, 4)

print(sorted(tuple2, reverse=True))  # 输出 [5, 4, 3, 2, 1]

# 按元组第二个元素排列

tuple3 = [(1, 2), (3, 1), (2, 3), (4, 5)]

print(sorted(tuple3, key=lambda x: x[1]))  # 输出 [(3, 1), (1, 2), (2, 3), (4, 5)]

4. 对字典进行排序

示例代码:

# 按键升序排列

dict1 = {'apple': 3, 'banana': 2, 'pear': 1, 'orange': 5}

print(sorted(dict1.items()))  # 输出 [('apple', 3), ('banana', 2), ('orange', 5), ('pear', 1)]

# 按值降序排列

dict2 = {'apple': 3, 'banana': 2, 'pear': 1, 'orange': 5}

print(sorted(dict2.items(), key=lambda x: x[1], reverse=True))  # 输出 [('orange', 5), ('apple', 3), ('banana', 2), ('pear', 1)]

5. 结语

以上是Python中sorted()函数的使用方法及示例,希望对大家有所帮助。除了sorted()函数,还有其他排序函数和方法,比如list.sort()方法和sorted(iterable, cmp=None, key=None, reverse=False)函数(Python2中)。不同的排序方法适用于不同的需求场景,需要根据具体情况选择合适的方法。