Как сделать проверку одинаковых строк в txt python
n = 1
while n > 0:
new_num = int(input('Новый контакт:'))
fileW = open('list.txt', 'a')
fileR = open('list.txt', 'r')
for line in fileR.readline():
if line == new_num:
print("Уже отписан")
fileW.write(f"{new_num}\n")
fileW.close()
fileR.close()
Не могу понять, как сделать проверку, на то что уже есть такая строка в файле. При том что во время работы программы строки добавляются
Ответы (1 шт):
Автор решения: Сергей
→ Ссылка
new_num = True
while new_num: # Выход из цикла по нажатии клавиши "Ввод"
flag = 0
new_num = input('Новый контакт:') # int не нужен
if not new_num:
break
# Так открытый файл закроется автоматом
with open('list.txt', 'r') as f:
for line in f:
if line == f'{new_num}\n': # \n нужна
print("Уже отписан")
flag = 1
break
if not flag:
with open('list.txt', 'a') as f:
f.write(f'{new_num}\n')
print("Записали новый контакт")