1.set方法
set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
2.sort,sorted
sorted() 函数对所有可迭代的对象进行排序操作。
sort 与 sorted 区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
3.排序
(1).set+sort
set用于去重,并产生一个dict,用list()强制转为list ,用list的sort方法用原list L的index作为排序的key
>>> L = [3, 1, 2, 1, 3, 4]
>>> T = list(set(L))
>>> T
[1, 2, 3, 4]
>>> T.sort(key=L.index)
>>> T
[3, 1, 2, 4]
(2).set+sorted
sorted不需要迭代对象是list,可返回新的list。同样先set,在排序
>>> L = [3, 1, 2, 1, 3, 4]
>>> T = sorted(set(L), key=L.index)
>>> T
[3, 1, 2, 4]
(3).for...in...if
>>> lst1 = [2, 1, 3, 4, 1]
>>> temp = []
>>> [temp.append(i) for i in lst1 if not i in temp]
[None, None, None, None]
>>> print(temp)
[2, 1, 3, 4]