Как найти строчку в списке списка
Моя sql функция возвращает мне список кортежей. Пример: result = [('p',), ('a',)]. Мне нужно в одну строчку проверить содержится ли в данном списке данных строчка, условно говоря, 'p'. Если использовать 'p' in result, выдает False т.к. он видит только два кортежа внутри. Как красиво и лаконично решить проблему?
Ответы (2 шт):
Автор решения: Эникейщик
→ Ссылка
я вот такое нагородил:
bool(sum([int("p" in el) for el in result]))
int("p" in el) - ставит 1, если "p" есть в кортеже, 0, если нет.
sum - считает итоговую сумму.
bool - выдает True, если сумма не 0 (т.е. хотя бы один кортеж содержал "p").
Можно убрать bool(), тогда выдаст количество кортежей, которые содержат искомое.