# normal 写法
l1 = ['b','c','d','b','c','a','a']
l2 = list(set(l1))
print(l2)
# plus 写法
l1 = ['b','c','d','b','c','a','a']
l2 = list({}.fromkeys(l1).keys())
output:
[‘b’, ‘d’, ‘c’, ‘a’]
[‘b’, ‘c’, ‘d’, ‘a’]
# normal 写法 l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) l2.sort(key=l1.index) # plus 写法 l1 = ['b','c','d','b','c','a','a'] l2 = sorted(set(l1),key=l1.index)
output:
[‘b’, ‘c’, ‘d’, ‘a’]
[‘b’, ‘c’, ‘d’, ‘a’]
L = [3, 1, 2, 1, 3, 4]
T = L[:]
for i in L:
while T.count(i) > 1:
del T[T.index(i)]
T.sort(key=L.index)
output:
[3, 1, 2, 4]
以如下代码为例:
# normal 写法 l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) print(l2) l2.sort(key=l1.index) print(l2)
output:
[‘b’, ‘d’, ‘c’, ‘a’]
[‘b’, ‘c’, ‘d’, ‘a’]
应该是将l2的值传递给l1,获取相应的索引,然后根据大小排序;
l1 = ['b','c','d','b','c','a','a']
l2 = list(set(l1))
print(l2)
for v in l2:
print(l1.index(v))
output:
[‘b’, ‘d’, ‘c’, ‘a’]
0
2
1
5
再排序:0,2,1,5 --> 0,1,2,5



