Moh*_*rma 6 python dictionary list unique
我是Python的新手,并尽可能地学习它.我陷入了一个愚蠢的问题,我想根据选择性键值对删除列表中的某些字典项.对于前者,我有:
l = [{'A':1, 'B':2, 'C':3, 'D':4},
{'A':5, 'B':6, 'C':7, 'D':8},
{'A':1, 'B':9, 'C':3, 'D':10}]
Run Code Online (Sandbox Code Playgroud)
我想要的输出是基于两个键A和C值删除字典:
l = [{'A':1, 'B':2, 'C':3, 'D':4},
{'A':5, 'B':6, 'C':7, 'D':8}]
Run Code Online (Sandbox Code Playgroud)
使用set记忆物品是否看到.
>>> A, B, C, D = 'ABCD'
>>>
>>> lst = [
... {A:1, B:2, C:3, D:4},
... {A:5, B:6, C:7, D:8},
... {A:1, B:9, C:3, D:10}
... ]
>>> seen = set()
>>> [x for x in lst if [(x[A], x[C]) not in seen, seen.add((x[A], x[C]))][0]]
[{'A': 1, 'C': 3, 'B': 2, 'D': 4}, {'A': 5, 'C': 7, 'B': 6, 'D': 8}]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
909 次 |
| 最近记录: |