Получите доступ к ключам словаря по списку ключей, используя dict-понимание - PullRequest
1 голос
/ 11 апреля 2019

Я новичок в Python и пытаюсь лучше понять словарь.Предположим, у меня есть словарь с большим набором ключей, а список содержит меньшее подмножество (но немного большее) ключей в словаре.Как бы вы, если это возможно, используя диктовку, получили доступ ко всем значениям с помощью клавиш в списке?

nw_dt = {}
for i in range(101):
    nw_dt[chr(i)] = randint(0, 101)
ky_lit = [chr(b) for b in range(50, 101)]

Что я устал, так это:

for kys in nw_dt:
    nw_dt[f'{kys for v in ky_lit}']

Но строка является выражением генератора, которое возвращает KeyError

Я также пытался найти один ключ:

for kys in nw_dt:
    nw_dt[f'{kys if kys == chr(51)}']

Возвращает ошибку разбора EOF для строки

1 Ответ

2 голосов
/ 11 апреля 2019

Вы можете перебирать список в словаре:

{key: nw_dt[key] for key in ky_lit}

Словарь понимает создает новый словарь, но он может перебирать любой повторяемый тип.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...