как получить указанный c элемент в кортеже на основе условия - PullRequest
0 голосов
/ 21 февраля 2020

Попытка получить указанный c элемент из списка содержит кортежи.

tuple_list= [('D:/test/1_birds_bp.png','D:/test/1_eagle_mp.png'), ('D:/test/2_crocodile_mp.png','D:/test/2_reptiles_bp.png')]

Я хочу получить элементы, которые содержат bp

Итак, ожидаемый результат

'D:/test/1_birds_bp.png' в первой группе кортежей и 'D:/test/2_reptiles_bp.png' из второй

Я пытался

def get_tuple(tuple_list):

    for a in tuple_list:
        #if (any('bp' in i for i in a)): 
        #bp = [ x for x in a if 'bp' in x ]
        if 'bp' in a:    
            print(a)
        return a
print(get_tuple(tuple_list))  

, что дает мне

('D:/test/1_birds_bp.png', 'D:/test/1_eagle_mp.png')

как можно oop через кортежи и получить элементы, которые удовлетворяют условию?

ожидаемый результат

'D: /test/1_birds_bp.png'

' D: / test / 2_reptiles_bp.png '

Мне нужно иметь доступ к ним в режиме l oop.

Найти элемент в списке кортежей

1 Ответ

1 голос
/ 21 февраля 2020
def get_tuple(tuple_list): 
   matches = []
   for t in tuple_list: 
       return tuple([a for a in t if 'bp' in a])

print(get_tuple(tuple_list)) 
...