python set()对整型list排序的用法

set()集合不仅可以删除list中重复的元素,而且还集成了自动升序排序的功能。还是蛮强大的。
但这里有一个坑,当整型list中有负元素时…
下面让我们眼见为实:

在这里插入代码片
a=[3,5,2,8,6,0]
#a=[3,5,2,8,6,0,-2]
b=[7,6,8,3,1]
a.extend(b)
print(list(set(a)))
#输出结果为:
#[0, 1, 2, 3, 5, 6, 7, 8]

但是如果集合中存在负整数:

在这里插入代码片
#a=[3,5,2,8,6,0]
a=[3,5,2,8,6,0,-2]
b=[7,6,8,3,1]
a.extend(b)
print(list(set(a)))
#神奇的一幕出现了
#输出为:[0, 1, 2, 3, 5, 6, 7, 8, -2]

这一点有点坑。
因此保险的方式还是再用一次sort()或sorted()刷一遍吧。

在这里插入代码片
#a=[3,5,2,8,6,0]
a=[3,5,2,8,6,0,-2]
b=[7,6,8,3,1]
a.extend(b)
a=list(set(a))
a.sort()
print(a)
#输出为:
#[-2, 0, 1, 2, 3, 5, 6, 7, 8]

欧了。
是不是涨了一点小姿势呢。

你可能感兴趣的:(python)