Найти - Пользователи
Полная версия: Списки
Начало » Python для новичков » Списки
1 2
Ilya
Почему код во всех трех случаях выдает вхождение этих элементов в список? Хотя в списке нет семерки.
b=[(0 and 1 and 2),(6 and 7 and 8),(2 and 4 and 6)]
a=[1,2,3,4,5,6,8,9,0]
def logic():
    for i in range(3):
        if b[i] in a:
            print ("b in a")
        else:
            print ("b isn't in a")
logic()
Budulianin
Ilya
Хотя в списке нет семерки.

>>> b=[(0 and 1 and 2),(6 and 7 and 8),(2 and 4 and 6)]
>>> b
[0, 8, 6]
Ilya
А как правильно сделать чтобы происходил поиск нескольких определенных элементов в списке?
Budulianin
Ilya
А как правильно сделать чтобы происходил поиск нескольких определенных элементов в списке?

>>> {0, 8}.issubset(set(b))
True

>>> 0 in b and 8 in b
True

>>> all(elem in b for elem in [0, 8])
True
Ilya
Можете пояснить?
У меня много троек чисел и их поиск производится в списке.
Budulianin
Ilya
Можете пояснить?

Что именно?
Ilya
issubset выдает ошибку при работе со списком.
Вот у меня есть список a и набор троек чисел. Как производить поиск этих троек чисел в списке? Вбивать огромный код для каждого b как-то глупо.
Budulianin
Ilya
issubset выдает ошибку при работе со списком.
Вот это глупо.

Я привёл 3 примера, любой из них подойдёт.

b=[(0 and 1 and 2),(6 and 7 and 8),(2 and 4 and 6)]
a=[1,2,3,4,5,6,8,9,0]
def logic(a, b):
    return all(elem in a for elem in b)  
if logic(a, b):
    print ("b in a")
else:
    print ("b isn't in a")
Ilya
Спасибо. Правда все равно не то.
Budulianin
Ilya
Спасибо. Правда все равно не то.
Значит пиши, что ты хочешь, яснее.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB