Словарь ключей соответствует по списку; получить пару ключ / значение

В python … У меня есть список элементов 'my_list' и словарь 'my_dict', где некоторые ключи совпадают в 'my_list'.

Я хотел бы найти словарь и получить пары ключ / значение для ключей, соответствующих элементам «my_list».

Я пробовал это …

if any(x in my_dict for x in my_list): print set(my_list)&set(my_dict) 

Но это не делает работу.

5 Solutions collect form web for “Словарь ключей соответствует по списку; получить пару ключ / значение”

(Я переименовал list в my_list и my_dict чтобы избежать конфликта с именами типов.)

Для лучшей производительности вы должны перебирать список и проверять членство в словаре:

 for k in my_list: if k in my_dict: print k, my_dict[k] 

Если вы хотите создать новый словарь из этих пар ключ-значение, используйте

 new_dict = {k: my_dict[k] for k in my_list if k in my_dict} 

Не используйте dict и list как имена переменных. Они скрывают встроенные функции. Предполагая список l и словарь d :

 kv = [(k, d[k]) for k in l if k in d] 
  new_dict = dict((k, v) for k, v in dict.iteritems() if k in list) 

Переключение списка в set(list) может привести к заметному увеличению скорости

Что относительно print([kv for kv in dict.items() if kv[0] in list])

Попробуй это:

 mydict = {'one': 1, 'two': 2, 'three': 3} mykeys = ['three', 'one','ten'] newList={k:mydict[k] for k in mykeys if k in mydict} print newList {'three': 3, 'one': 1} 
  • Как правильно разбить этот список строк?
  • Могу ли я включить один элемент в список без инструкции else в python?
  • Почему «return list.sort ()» возвращает None, а не список?
  • Найти начальные и конечные индексы подсписок в списке
  • Индекс Python вне диапазона в разрезе списка
  • Python: список слияния с диапазоном
  • Python: TypeError: объект «NoneType» не подлежит расшифровке
  • Являются ли атрибуты класса Python совместно или нет?
  •  
    Interesting Posts for Van-Lav

    Принятие адреса электронной почты в качестве имени пользователя в Django

    «Превышена максимальная глубина рекурсии», когда «свойство» применяется к переменной экземпляра «self.x»

    Каков рекомендуемый способ построения: matplotlib или pylab?

    Как я могу изменить конкретную метку строки в кадре данных Pandas?

    Указание ширины линии рамки легенды, в matplotlib

    Удаление разрешений root в Python

    От одного до одного поля Django Admin

    Почему вы не переключитесь на Python 3.x?

    Получить местоположение исходного файла .py

    Подождите, пока перенаправление страницы Selenium WebDriver (Python)

    Повторное совпадение совпадений с регулярным выражением

    Как я могу использовать общий код в python?

    Художник Matplotlib должен оставаться того же размера при увеличении, но ТАКЖЕ перемещаться с панорамированием?

    «Ошибка шины: 10» при попытке установить имя столбца pandas

    Python: как узнать, какой URL-адрес терпит неудачу, используя urllib2 и pool.map?

    Python - лучший язык программирования в мире.