Python 如何从DICT列表中获取所有唯一ID?

Python 如何从DICT列表中获取所有唯一ID?,python,Python,假设您有这样一个dict列表{'id':1,'other_value':5} 也许如此 items = [{'id': 1, 'other_value':5}, {'id': 1, 'other_value2':6}, {'id': 2, 'other_value':4}, {'id': 2, 'other_value2':3}] 现在,您可以假设这是数据的一小部分。可能有数千人。而且结构不是我指定的,它是给我的 如果我只想把身份证拿出来,我可以这样做: ids = [i[id] for i

假设您有这样一个dict列表
{'id':1,'other_value':5}

也许如此

items = [{'id': 1, 'other_value':5}, {'id': 1, 'other_value2':6}, {'id': 2, 'other_value':4}, {'id': 2, 'other_value2':3}]
现在,您可以假设这是数据的一小部分。可能有数千人。而且结构不是我指定的,它是给我的

如果我只想把身份证拿出来,我可以这样做:

ids = [i[id] for i in items]
但是,您会注意到原始数据中存在重复的id。所以问题是,;如何才能整齐地获得唯一的ID

我希望有这样的事情:

ids = [i[id] for i in items if not in LIST]
但据我所知,在生成器中没有访问列表的方法


当然,我可以做一个for循环,并很容易地做到这一点。我只是想知道是否有一种更简洁的方法可以做到这一点。

如果你想要唯一的id,你可以使用一套:

set(i['id'] for i in items)

如果您想要唯一的id,可以使用一组:

set(i['id'] for i in items)
<>但是你可以考虑另一个数据结构,例如列表的DITC:

items = {1: [5, 6], 2: [2, 4]}
<>但是你可以考虑另一个数据结构,例如列表的DITC:

items = {1: [5, 6], 2: [2, 4]}

您不必自己创建中间列表<代码>设置(项目中i的i['id'])就可以了。您不必自己创建中间列表<代码>设置(i['id']表示项目中的i)可以。d0ougal,这是一个初级问题,没有人说你是。请不要删除标签。d0ougal,这是一个初级问题,没有人说你是。请不要取下标签。