Python. Выполнение условия при совпадении одного из значений в файле

помогите реализовать подобие игнор-листа для бота: Есть список, скажем, .txt с id пользователей в игнор-листе. Необходимо, чтобы выполнялась подобная команда:

if message.from_id != *все id пользователей в игнор-списке*:
    send.message('hello')
else:
    continue

Рассмотрю также варианты с таблицами.


Ответы (1 шт):

Автор решения: Arseni Mourzenko

Для этого существует оператор in.

>>> 5 in [1, 8, 4, 5]
True
>>> 6 in [1, 8, 4, 5]
False
>>> 5 not in [1, 8, 4, 5]
False

В вашем случае:

if message.from_id not in [123, 456, 789]:
    send.message('hello')
else:
    continue

Если значения в текстовом файле, одно значение на строку, то сначала нужно прочитать файл, и перевезти текст в каждой строке в тот формат, который нужен вам. К примеру если значения, это числа, то:

with open('ignore.txt') as f:
    lines = f.readlines()

ids = map(int, lines)

...

if message.from_id not in ids:
    send.message('hello')
else:
    continue
→ Ссылка