python sorted
Python中的sorted函数究竟是何方神圣呢?让我们一起揭开它的神秘面纱。
sorted函数是Python中的一颗明珠,它能够对所有可迭代对象进行排序操作。与list中的sort方法相比,sorted函数具有更广泛的应用范围。
sort方法通常只适用于list类型的数据,而sorted函数则能够处理所有可迭代对象,如元组、字符串、集合等。sort方法会直接修改原列表,没有返回值,而sorted函数则会返回一个新的排序后的列表,不会修改原列表。
它的语法格式如下:
```python
sorted(iterable, cmp=None, key=None, reverse=False)
```
参数说明:
iterable:可迭代对象,你需要对其进行排序的数据。
cmp:比较的函数,通过这个函数可以自定义排序规则。
key:指定可迭代对象中的一个元素来进行排序,通过这个函数可以指定排序的依据。
reverse:排序规则,True表示降序排列,False表示升序排列(默认)。
让我们通过一些实例来深入了解sorted函数的使用:
```python
a = [5, 7, 6, 3, 4, 1, 2]
b = sorted(a) 对a进行排序,保留原列表a不变
print(b) 输出:[1, 2, 3, 4, 5, 6, 7]
```
再来一个复杂的例子:
```python
L = [('b', 2), ('a', 1), ('c', 3), ('d', 4)]
sorted_L = sorted(L, cmp=lambda x, y: cmp(x[1], y[1])) 按照元组的第二个元素进行排序
print(sorted_L) 输出:[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
```
让我们看一个关于的例子:
```python
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
sorted_students = sorted(students, key=lambda s: s[2]) 按照学生的年龄进行排序
print(sorted_students) 输出:[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
```
以上就是关于Python中sorted函数的分享,希望能够帮助大家更好地理解和应用它。