Как я могу проверить, есть ли указанное значение в dict? - PullRequest
0 голосов
/ 24 июня 2019

Я настраиваю скрипт, и мне нужно знать, есть ли указанное значение в моем словаре.

dict = {"1" : [1, 2, 3], "2" : [4, 5, 6]}

Как мне напечатать:

'dict analyzed'

Еслив списке есть 5?

Дело в том, что я хочу проанализировать все списки из значений dict, но я не знаю, как я могу перевести это.

Ответы [ 3 ]

2 голосов
/ 24 июня 2019
for key, value in d.items():
    if 5 in value:
        print('5 in dict')
        break
  • Используйте break, чтобы остановить цикл после нахождения значения и сэкономить время, не повторяя весь диктовку.

Используйте iteritems() вместо items(), если вы используете python2.

0 голосов
/ 24 июня 2019

Делаю это на моем телефоне в 2:30, потому что я не могу спать, поэтому терпите меня за любое плохое форматирование.

if any(5 in x for x in mydict.values()):
    print("dict analyzed")

Это один из хитрых Pythonic способов сделать это. На высоком уровне вам нужно перебрать mydict.values(), что обеспечивает повторяемость значений mydict (dict состоит из пар ключ-значение.) Если одно из них содержит 5, выведите «dict» проанализирован. "

Функция any, которую я использовал, является синтаксическим сахаром; заметьте, идея высокого уровня остается прежней.

0 голосов
/ 24 июня 2019

Во-первых, избегайте присвоения имен именам, таким как dict.

В вашем случае указано следующее:

mydict = {"1" : [1, 2, 3], "2" : [4, 5, 6]}
for key, vals in mydict.items():
    if 5 in vals:
        print('Dict analyzed')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...