У меня есть dict
, у которого есть ключи строкового типа, точные значения которых я не могу знать (потому что они генерируются динамически в другом месте).Тем не менее, я знаю, что этот ключ, который я хочу, содержит определенную подстроку, и что единственный ключ с этой подстрокой определенно находится в требовании.
Какой самый лучший или «самый питонический» способ получить значение дляэтот ключ?
Я подумал о двух стратегиях, но оба меня раздражают:
for k,v in some_dict.items():
if 'substring' in k:
value = v
break
- ИЛИ -
value = [v for (k,v) in some_dict.items() if 'substring' in k][0]
Первый метод громоздкий и нескольконекрасиво, хотя второе чище, но дополнительный шаг индексации в понимании списка ([0]
) раздражает меня.Есть ли лучший способ выразить вторую версию или более краткий способ написать первую?