发布于2019-08-03 08:49 阅读(3687) 评论(0) 点赞(2) 收藏(9)
在python相关职位的面试过程中,会对列表list的去重进行考察。(注意有时会要求保证去重的顺序性)
1、直观方法
1 li=[1,2,3,4,5,1,2,3]
2 new_li=[]
3 for i in li:
4 if i not in new_li:
5 new_li.append(i)
6 print(new_li)
先建立一个新的空列表,通过遍历原来的列表,再利用逻辑关系not in 来去重。
总结:这样可以做出来,但是过程不够简单。但是此方法保证了列表的顺序性。
2、利用set的自动去重功能
1 li=[1,2,3,4,5,1,2,3]
2 li=list(set(li))
3 print(li)
将列表转化为集合再转化为列表,利用集合的自动去重功能。简单快速。缺点是:使用set方法无法保证去重后的顺序。
但是,可以通过列表中索引(index)的方法保证去重后的顺序不变。
1 li=[1,2,3,4,5,1,2,3]
2 new_li=list(set(li))
3 new_li.sort(key=li.index)
4 print(new_li)
以上两种list去重方法就是常用的去重方法,需要注意的是面试时如果要求保证列表的顺序时,注意set方法通过索引也能保证顺序性。
作者:我想打人
链接:https://www.pythonheidong.com/blog/article/3804/9f59a672fa83d88ac8c0/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!