原地排序和复制排序

Python中的排序分为原地排序和复制排序。
  - 原地排序(in place sort) 指按照指定的方式排列数据,然后用排序后的数据替换原有数据
  - 复制排序(copied sort)指按你指定的方式排列数据,然后返回一个源数据的有序副本,源数据的顺序依然保留
  - 原地排序使用对象的sort()方法
  - 复制排序使用内置BIF sorted()
  - 默认都是正序,倒序的话可以添加reverse=True
 
原地排序:
>>> a =[2,3,6,9,43,6,98,4,8]
>>> a.sort()
>>> a
[2, 3, 4, 6, 6, 8, 9, 43, 98]
>>> a.sort(reverse=True)
>>> a
[98, 43, 9, 8, 6, 6, 4, 3, 2]
>>> sorted(a,reverse=True)
[98, 43, 9, 8, 6, 6, 4, 3, 2]
 
复制排序:
>>> b = [7,45,8,3,5,7,9,0,5,7]
>>> sorted(b)
[0, 3, 5, 5, 7, 7, 7, 8, 9, 45]
>>> b
[7, 45, 8, 3, 5, 7, 9, 0, 5, 7]
 
去重:
  对一个列表进行去重其实有很多方法:
>>> d = ['a','b','a','c']
>>> e=[]
>>> for i in d:
if i not in e:
e.append(i)
>>> e
['a', 'b', 'c']
这里可以利用一种特殊的数据类型集合。集合是无序的并且元素是唯一的
>>> d
['a', 'b', 'a', 'c']
>>> set(d)
{'b', 'a', 'c'}
原文地址:https://www.cnblogs.com/dachenzi/p/6265795.html