1、内置函数sorted()
sorted(iterable, key=None, reverse=False)
返回将迭代器中的元素排序的新列表
>>> i = [55, 12, 23, 45, 18, 26]
>>> j = sorted(i)
>>> i
[55, 12, 23, 45, 18, 26]
>>> j
[12, 18, 23, 26, 45, 55]
>>>
将reverse参数设置为True,则可以实现逆置排序
>>> sorted(i, reverse = True)
[55, 45, 26, 23, 18, 12]
>>>
2、内置函数reversed()
reversed(seq)
返回以一个逆置的迭代器
>>> i = [55, 12, 23, 45, 18, 26]
>>> reversed(i)
<list_reverseiterator object at 0x02DE4C90>
>>>
>>> for n in reversed(i):
print(n)
26
18
45
23
12
55
直接用print输出则没输出一个数字就自动换行,显然不是想要的结果
>>> help(print)
Help on built-in function print in module builtins:
print(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
通过查看print函数,则发现end默认值为‘\n',改为’ ‘空格,后可以达到预期输出效果
>>> for n in reversed(i):
print(n, end = ' ')
26 18 45 23 12 55
3、sorted与sort区别
前者是内置函数,后者是列表、字典的方法;前者返回一个新列表
>>> i = [55, 12, 23, 45, 18, 26]
>>> n = sorted(i)
>>> i
[55, 12, 23, 45, 18, 26]
>>> n
[12, 18, 23, 26, 45, 55]
>>> i.sort()
>>> i
[12, 18, 23, 26, 45, 55]
4、reversed与reverse区别
前者是内置函数,后者是列表、字典的方法。前者返回一个新列表
>>> i = [55, 12, 23, 45, 18, 26]
>>> for n in reversed(i):
print(n, end = ' ')
26 18 45 23 12 55
>>> i
[55, 12, 23, 45, 18, 26]
>>> i.reverse()
>>> i
[26, 18, 45, 23, 12, 55]
>>>