python中sorted函数, 什么是sorted函数?
时间:2024-12-26阅读数:12
`sorted` 函数是 Python 的内置函数,用于对可迭代目标(如列表、元组、字符串等)进行排序。该函数回来一个新的列表,其间包括排序后的元素。
根本语法```pythonsorted```
`iterable`: 要排序的可迭代目标。 `key`: 可选参数,指定一个函数,该函数的回来值将用于排序。默以为 `None`。 `reverse`: 可选参数,指定排序是否为降序。默以为 `False`。
示例```python 对数字列表进行排序numbers = sorted_numbers = sortedprint 输出:
对字符串列表进行排序strings = sorted_strings = sortedprint 输出:
运用 key 参数进行排序numbers = sorted_numbers_key = sortedprint 输出:
运用 reverse 参数进行降序排序sorted_numbers_reverse = sortedprint 输出: ```
注意事项 `sorted` 函数不会修正原始的可迭代目标,而是回来一个新的列表。 假如可迭代目标中的元素无法比较(例如,列表中包括不同类型的元素),则 `sorted` 函数将引发 `TypeError`。 假如 `key` 参数指定的函数回来值无法比较,也会引发 `TypeError`。
Python中sorted函数详解
在Python编程中,排序是数据处理中十分常见的一个操作。`sorted()`函数是Python内置的一个强壮东西,它能够对各种可迭代目标进行排序。本文将具体介绍`sorted()`函数的用法、参数以及在实践运用中的技巧。
什么是sorted函数?
![](https://ps.ssl.qhimg.com/t020bb807106c716386.jpg)
在Python中,`sorted()`是一个内置函数,用于对可迭代目标(如列表、元组、字符串等)进行排序。与列表的`.sort()`办法不同,`sorted()`函数会回来一个新的排序列表,而不会修正原始列表。
根本用法
![](https://ps.ssl.qhimg.com/t02ee1e612a4e47880b.jpg)
运用`sorted()`函数十分简略。以下是一个根本的比如,展现了怎么对一个列表进行排序:
```python
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers = sorted(numbers)
print(sorted_numbers) 输出: [1, 1, 2, 3, 4, 5, 6, 9]
参数详解
![](https://ps.ssl.qhimg.com/t0248ef234a13cded4a.jpg)
`sorted()`函数承受几个参数,其间最重要的是`key`和`reverse`。
key参数
![](https://ps.ssl.qhimg.com/t023e65009b474ba87e.jpg)
`key`参数答应你指定一个函数,该函数将被用来从每个元素中提取一个用于排序的键。默许情况下,`sorted()`会运用元素自身进行比较。
```python
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers = sorted(numbers, key=lambda x: x2)
![](https://ps.ssl.qhimg.com/t02245da6a4acd15ecb.jpg)
print(sorted_numbers) 输出: [1, 1, 2, 3, 4, 5, 6, 9],由于排序依据的是平方值
reverse参数
![](https://ps.ssl.qhimg.com/t0225a9b01f26142a7c.jpg)
`reverse`参数是一个布尔值,假如设置为`True`,则列表元素将被逆序摆放。默许情况下,`sorted()`函数进行升序排序。
```python
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers_desc = sorted(numbers, reverse=True)
print(sorted_numbers_desc) 输出: [9, 6, 5, 4, 3, 2, 1, 1]
运用场景
![](https://ps.ssl.qhimg.com/t02b7d3b960c2bc7fee.jpg)
列表排序
![](https://ps.ssl.qhimg.com/t02ac577f0fa167b0d7.jpg)
对列表进行排序是最常见的用处之一。
```python
my_list = ['banana', 'apple', 'cherry']
sorted_list = sorted(my_list)
print(sorted_list) 输出: ['apple', 'banana', 'cherry']
字典排序
![](https://ps.ssl.qhimg.com/t021cd8c2e44bc34d95.jpg)
`sorted()`函数也能够用来对字典进行排序,无论是依据键仍是值。
```python
my_dict = {'banana': 3, 'apple': 4, 'cherry': 1}
sorted_dict_by_key = sorted(my_dict.keys())
sorted_dict_by_value = sorted(my_dict.values())
print(sorted_dict_by_key) 输出: ['apple', 'banana', 'cherry']
print(sorted_dict_by_value) 输出: [1, 3, 4]
差异与联络
![](https://ps.ssl.qhimg.com/t02f8c20998fc528468.jpg)
`sorted()`和列表的`.sort()`办法在功能上十分类似,但它们之间有一些要害的差异:
就地排序与回来新列表
![](https://ps.ssl.qhimg.com/t028ea8b6e4c8cd91cc.jpg)
`sorted()`回来一个新的排序列表,而`.sort()`办规律直接在原始列表上进行排序。
```python
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers = sorted(numbers)
numbers.sort()
print(sorted_numbers) 输出: [1, 1, 2, 3, 4, 5, 6, 9]
print(numbers) 输出: [1, 1, 2, 3, 4, 5, 6, 9]
回来值
![](https://ps.ssl.qhimg.com/t0258042d24edf4218d.jpg)
`sorted()`回来一个新的排序列表,而`.sort()`办法没有回来值,它
本站所有图片均来自互联网,一切版权均归源网站或源作者所有。
如果侵犯了你的权益请来信告知我们删除。邮箱:[email protected]
猜你喜欢
-
耗费运用python编程,从根底到实践
运用Python编程一般触及以下几个进程:1.装置Python:首要,你需求保证你的核算机上装置了Python。你能够从Python官方网站下载并装置合适你操...
2025-01-10后端开发 -
r言语装置教程,R言语保姆级装置教程
装置R言语是一个相对简略的进程,以下是一个根本的装置攻略。请注意,具体的过程或许会根据您的操作体系和R版别的不同而有所差异。装置R言语1.下载R言语拜访R官方网站:https://www.rproject.org/在“DownloadR”部分,挑选合适您操作体系的版别...。
2025-01-10后端开发 -
java8,敞开高效编程新时代
Java8是Java编程言语的第八个首要版别,于2014年3月18日发布。这个版别引入了许多新的特性和改善,包含Lambda表达式、流...
2025-01-10后端开发 -
铃木swift报价,全面解析这款小型车的商场行情
依据我找到的信息,铃木Swift(在中国商场被称为“雨燕”)的最新报价如下:1.日本商场:新一代铃木Swift在日本供给1.2升燃油版和1.2升轻混版两种动力挑选,并依据装备不同分为XG(燃油版)、MX(轻混版)、MZ(轻混版)三种车型,价格区间为172.7万233.2万日元,约合人民币8...。
2025-01-10后端开发 -
swift怎样读,耗费开端学习Swift
Swift是一种编程言语,首要用于iOS、macOS、watchOS和tvOS的开发。它由苹果公司于2014年推出,旨在代替ObjectiveC...
2025-01-10后端开发