Как использовать понимание, чтобы найти ключ dict, когда значение «Нет»? - PullRequest
0 голосов
/ 24 октября 2018

Как использовать понимание, чтобы найти ключ dict, когда значение None?Есть ли один вкладыш вместо следующего кода?

def Func():
    for k, v in some_dict.items()
        if not v:
            return k

Ответы [ 2 ]

0 голосов
/ 24 октября 2018

Попробуйте (обратите внимание, что пустые списки будут None, а по умолчанию большие списки получают первый элемент):

l=next((k for k, v in some_dict.items() if not v),None)
print(l)

Или:

l=next((k for k in some_dict.keys() if not some_dict[k]),None)
print(l)
0 голосов
/ 24 октября 2018
result = next((k for k, v in some_dict.items() if not v), None)

При этом используется next для итерации по генератору и возврата первого k с v, равным false, или None, если ни один элемент не соответствует этому условию.Если вы предпочитаете вызывать исключение, когда ни один элемент не соответствует, пропустите значение по умолчанию None.

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