python中去除列表重复元素的方法汇总

来源:互联网 发布:塔士多礼服 知乎 编辑:程序博客网 时间:2024/05/22 15:46

NO.1 set

输入代码


A = ['a','b','X','a','b','G']B = list(set(A))print Aprint B
  • 1
  • 2
  • 3
  • 4

显示如下

['a', 'b', 'X', 'a', 'b', 'G']['a', 'X', 'b', 'G']
  • 1
  • 2

NO.2 发现上面虽然去掉了重复的元素,但顺序改变了,要是不想改变原列表的顺序A,应该这样做

输入1如下

A = ['a','b','X','a','b','G']B = list(set(A))B.sort(key=A.index)print Aprint B
  • 1
  • 2
  • 3
  • 4
  • 5

输入2如下

A = ['a','b','X','a','b','G']B = sorted(set(A),key=A.index)print Aprint B
  • 1
  • 2
  • 3
  • 4
  • 5

上述所有结果如下,结果按原列表顺序.


['a', 'b', 'X', 'a', 'b', 'G']['a', 'b', 'X', 'G']
  • 1
  • 2

当然也可遍历,因为比较简单,这里不再多说


NO .3

A = ['a','b','X','a','b','G']B = {}.fromkeys(A).keys()print Aprint B
  • 1
  • 2
  • 3
  • 4

结果如下,不是按原列表顺序

['a', 'b', 'X', 'a', 'b', 'G']['a', 'X', 'b', 'G']
  • 1
  • 2

上述多种方法,究竟怎么选择,用哪种好呢?It is up to you!




转载自:http://blog.csdn.net/yywan1314520/article/details/50557995

原创粉丝点击