首页 > 其他 > 详细

进阶删除重复元素

时间:2020-05-02 22:43:50      阅读:58      评论:0      收藏:0      [点我收藏+]
def dedupe(items,key=None):
    seen = set()
    for item in items:
        val = item if key==None else key(item)
        #item是否为字典,是则转化为字典key(item),匿名函数调用
        if val not in seen:
            yield item
            seen.add(val)
            #集合增加元素val 
if __name__=="__main__":
    a = [{x:2,y:4},{x:3,y:5},{x:5,y:8},{x:2,y:4},{x:3,y:5}]
    b=[1,2,3,4,1,3,5]
    print(b)
    print(list(dedupe(b)))
    print(a)
    print(list(dedupe(a,key=lambda a:(a[x],a[y]))))
    #按照a[‘x‘],a[‘y‘]方式
        

技术分享图片

 

 


 

进阶删除重复元素

原文:https://www.cnblogs.com/hany-postq473111315/p/12819466.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!