Как отмечалось в моем вчерашнем комментарии: вам нужно разделить данные по тому же токену, который вы записали в файл:
Запись:
file.write(regusername + ":" + regpassword)
file.write("\n")
Читайте:
username, password = line.split(',') # use : instead of ,
Кроме этого - вы добавляете '\n'
после PW, так что если вы читаете свой файл с помощью
with open('db.txt', 'r') as file:
for line in file:
username, password = line.split(',')
ваш пароль будет включать это '\n'
- вам нужно удалить его, если вы сравните его с паролем, полученным input_password = input("Enter your password :")
, у которого NO '\n'
в конце:
with open('db.txt', 'r') as file:
for line in file:
username, password = line.strip().split(',')
Когда вы находитесь на удалите ненужные str()
вокруг строк и измените обработку файлов внутри def signup()
, чтобы использовать with open (...) as file: ...
.