python list去重方法及效率

匿名 (未验证) 提交于 2019-12-02 22:51:30
li=[1,2,3,4,5,1,2,3] new_li=[] for i in li:     if i not in new_li:         new_li.append(i) print(new_li)

总结:这样可以做出来,但是效率不行。但是此方法保证了列表的顺序性。

li=[1,2,3,4,5,1,2,3] li=list(set(li)) print(li)

将列表转化为集合再转化为列表,利用集合的自动去重功能。简单快速。
缺点是:使用set方法无法保证去重后的顺序。

但是,可以通过列表中索引(index)的方法保证去重后的顺序不变。

li new_li=list(set(li)) new_li.sort(key=li.index) print(new_li)
li=[1,2,3,4,5,1,2,3] li_new = {}.fromkeys(li).keys()
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!