Эти однострочники в порядке, но новичок может не получить их.Здесь они разбиты:
list_of_dicts = (the list you posted)
Хорошо, у нас есть список, и каждый его член является диктатом.Вот это list comprehension
:
[expr for d in list_of_dicts]
Это все равно что сказать for d in list_of_dicts ...
.expr
оценивается для каждого d и генерируется новый список.Вы также можете выбрать только некоторые из них с помощью if
, см. Документы.
Итак, что нам нужно expr
?В каждом диктовке d
мы хотим, чтобы значение соответствовало ключу 'memberId'
.Это d['memberId']
.Итак, теперь понимание списка:
[d['memberId'] for d in list_of_dicts]
Это дает нам список адресов электронной почты, теперь, чтобы сложить их вместе с запятыми, мы используем join
(см. Документы):
', '.join([d['memberId'] for d in list_of_dicts])
Я вижу, что другие постеры не включили [] в список аргументов join
, и это работает.Приходится искать это, я не знаю, почему ты можешь это оставить.НТН.