Как узнать, что второе значение не равно -1?
Есть такие данные:
[(1, 15772), (2, 15773), (3, 15778), (4, -1), (5, 15766), (6, 15776), (7, -1), (8, 15777), (9, -1), (10, 15770), (11, -1)]
Подскажите, пожалуйста, как узнать, что значение не равно -1?
То-есть для (1, 15772) - что 15772 не равно -1, потом 15773 не равно -1
Ответы (2 шт):
Автор решения: Jack_oS
→ Ссылка
data = [(1, 15772), (2, 15773), (3, 15778), (4, -1), (5, 15766), (6, 15776), (7, -1), (8, 15777), (9, -1), (10, 15770), (11, -1)]
for d in data: # переберите все элементы списка
if d[1] != -1: # сравните второе значение (d[1] индексы начитаются с 0) с -1
print(d) # печать элемента, если не -1
распечатает только элементы списка со вторым значением, не равным -1:
(1, 15772)
(2, 15773)
(3, 15778)
(5, 15766)
(6, 15776)
(8, 15777)
(10, 15770)
Автор решения: TigerTV.ru
→ Ссылка
Просто:
print(*(a for a in data if a[1] != -1))
а можно так:
print(*filter(lambda x: x[1] != -1, data))
Или без префиксной "звездочки":
for i in filter(lambda x: x[1] != -1, data):
print(i)