Как избежать дубликатов при записи chat.id в файл?
Есть код:
global sub
sub = [line.rstrip('_\n') for line in open(subfile,'rt')]
if str(m.chat.id) not in sub:
with open(subfile, 'a') as f:
f.write(str(m.chat.id) + " \n")
else:
bot.send_message(m.chat.id, 'hi')
Он записывает m.chat.id в файл sub. По идее, он должен делать это только 1 раз, но он делает это каждый раз не смотря на if else и из-за этого появляются дубликаты. Как это исправить?
f = open('file.txt', 'r')
for line in f:
if str(m.chat.id) in line:
f.close()
break
else:
f = open('file.txt', 'a')
f.write(str(m.chat.id) + '\n')
f.close()
bot.send_message(m.chat.id, 'hi')