#python
#python
Вопрос:
Дайте У меня есть список со словарями, и я хочу получить все уникальные значения из ключа first_name из словарей, как мне это сделать на python?
data = [
{
"id": 1,
"first_name": "John"
},
{ "id": 2,
"first_name": "Mary"
},
{ "id": 3,
"first_name": "John"
}
]
Ответ №1:
Вы можете использовать набор понимания :
first_names = {d["first_name"] for d in data}
Комментарии:
1. Это приведет к дублированию. Даже в примере OPs.
Ответ №2:
>>> set(i["first_name"] for i in data)
{'John', 'Mary'}
если вы хотите list
вместо set
, вы можете преобразовать его в list:
>>> list(set(i["first_name"] for i in data))
['John', 'Mary']
Ответ №3:
Вы можете сопоставить оператор itemgetter()
со словарями в списке:
from operator import itemgetter
iget = itemgetter('first_name')
set(map(iget, data))
# {'Mary', 'John'}