Где ошибка в моей программе? Я проверяю id человека в телеграме на наличие в файле и, если его нет, записываю его. Но почему-то бот не видит этот id (пока в файле он только один, и то мой)
@bot.message_handler(commands=['start'])
def start (message):
f=open('Файл.txt','a+')
t = f.readlines()
n=t.find(str(message.chat.id))
if n>-1:
bot.send_message(message.chat.id, 'привет'+str(n))
elif n==-1:
f.write(' '+ str(message.chat.id))
bot.send_message(message.chat.id, 'привет'+str(n))
f.close()
Тут n (индекс начала найденого id) всегда выводит -1. В итоге записываются одинаковые значения
Тут я хочу посчитать количество пользователей и мне выдает ошибку, при этом с обычной строкой оно работает
File "new.py", line 23, in test
a=len(re.findall(r'(\d+)', string))
File "C:\Users\user\AppData\Local\Programs\Python\Python38\lib\re.py", line 24
1, in findall
return _compile(pattern, flags).findall(string)
TypeError: expected string or bytes-like object
@bot.message_handler(commands=['test'])
def test (message):
f=open('Файл.txt','r')
string = f.readlines()
a=len(re.findall(r'(\d+)', string))
bot.send_message(message.chat.id,str(a))
f.close()