Python字典列表去重代码怎么写?Python如何去除列表重复字典

python之中的列表因为可以保存任意类型的数据,就连字典这种同样是数据结构的序列对象也可以放在字典中保存,所以列表结构也会经常被用来存储多个字典对象 。而本文所要来介绍的就是将列表中重复字典对象给去除掉的方法,想要学习一下的小伙伴就往下看看吧 。

Python字典列表去重代码怎么写?Python如何去除列表重复字典

文章插图
li = [{'a': 1}, {'b': 2}, {'a': 1}]li = [dict(t) for t in set([tuple(d.items()) for d in li])]直接通过代码示例来看是最简单方便了解学习一个功能的方式了,在上面的代码示例之中列表li之中有三个字典对象,其中第一个以及第三个就是键和值都完全重复的 。但是在不读取列表中字典值的情况下,是没有办法去判断它们是否相同 。
【Python字典列表去重代码怎么写?Python如何去除列表重复字典】1.所以在下面一行代码就是采用肋两个列表推导式来实现字典列表去重操作,那么该代码需要从右往左来看 。首先使用for循环迭代列表并且取出了其中的所有字典对象,然后调用item()方法会将字典之中的值以元组形式返回,示例如下:
[(('a', 1),), (('b', 2),), (('a', 1),)]2.那么在转为元组之后实际上就是把这三个字典键值对都给取了出来,而这段代码又是包括在函数set()之中的,就会自动将其实现去重操作 。去重之后再使用另外一个列表推导式用for循环迭代该集合并将元素转为字典,而最外层列表的中括号又会将其重新转为字典列表格式,最后结果如下所示:
[{'a': 1}, {'b': 2}]以上就是关于“Python字典列表去重代码怎么写?Python如何去除列表重复字典”的全部内容了,希望对你有所帮助 。

    推荐阅读