📌  相关文章
📜  在 python 中对列表数字进行排序(1)

📅  最后修改于: 2023-12-03 14:51:05.849000             🧑  作者: Mango

在 Python 中对列表数字进行排序

Python 中内置了一个 sorted() 函数,可以对列表中的数字进行排序。

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

参数说明:

  • iterable:可迭代对象,如列表、元组、字符串等。
  • key:排序的关键字,可选。
  • reverse:是否降序,默认为 False,表示升序。
示例
# 对列表进行排序
list1 = [3, 5, 1, 9, 2]
list1_sorted = sorted(list1)
print(list1_sorted)  # [1, 2, 3, 5, 9]

# 对元组进行排序
tuple1 = (3, 5, 1, 9, 2)
tuple1_sorted = sorted(tuple1)
print(tuple1_sorted)  # [1, 2, 3, 5, 9]

# 对字符串进行排序
str1 = 'python'
str1_sorted = sorted(str1)
print(str1_sorted)  # ['h', 'n', 'o', 'p', 't', 'y']

# 按照指定的关键字进行排序
list2 = [('apple', 3), ('banana', 2), ('orange', 4)]
list2_sorted = sorted(list2, key=lambda x: x[1])
print(list2_sorted)  # [('banana', 2), ('apple', 3), ('orange', 4)]
注意事项
  • sorted() 函数返回的是排序后的新列表,原列表不会被修改。
  • 当对字典进行排序时,需要用到 dictitems() 方法。例如,按照字典的值对其进行排序可以使用如下代码:
dict1 = {'apple': 3, 'banana': 2, 'orange': 4}
dict1_sorted = sorted(dict1.items(), key=lambda x: x[1])
print(dict1_sorted)  # [('banana', 2), ('apple', 3), ('orange', 4)]