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