Проверить наличие строки в любом месте списка

200 просмотра
0
0 Комментариев

Я работаю с библиотекой sqlite3 и при отображении данных он выводит список с данными типа tuple и хотел бы проверить есть ли наличие строки в списке.

Код:

watcher_id = 116532
cursor.execute('SELECT watchers FROM posts')
w = cursor.fetchall()

Вывод в консоли при print(w):

[(116532456743536896356746464,), (36572234134523356345445576,), (244684243545348545634,), (34574563542134146744757656785468,)]

Нужно проверить, содержится ли watcher_id в любом из них.


Добавить комментарий

2 Answers

Python Опубликовано 12.12.2018
0

Можно так:

In [266]: watcher_id_str = str(watcher_id)
 
In [267]: any(watcher_id_str in x for x in map(str, w))
Out[267]: True

или так:

In [271]: str(watcher_id) in '|'.join(map(str, w))
Out[271]: True

Добавить комментарий
0

watcher_id = '116532'
w = [(116532456743536896356746464,), (36572234134523356345445576,), (244684243545348545634,),
     (34574563542134146744757656785468,)]
for i in w:
    if watcher_id in str(i[0]):
        print(True)
    else:
        print(False)


Вывод

True  # 116532456743536896356746464
False # 36572234134523356345445576
False # 244684243545348545634
False # 34574563542134146744757656785468

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up