Есть имя, которое внесено в файл, например Quor. При запуске программы, проходит проверка на данное имя, оно его находит, и предлагается ввести другое имя пользователя для внесения в файл. Но когда я ввожу новое имя, в месте вывода оно выводит имя Quor, вместо нового внесенного вбивает тот же Quor, либо первое введенное.
Не могу разобраться.
import json
def get_stored_username():
"""Получает хранимое имя пользователя, если оно существует."""
filename = 'username.json'
try:
with open(filename) as f_obj:
username = json.load(f_obj)
except FileNotFoundError:
return None
else:
return username
def get_new_username():
"""Запрашивает новое имя пользователя."""
username = input("What is your name? ")
filename = 'username.json'
with open(filename, 'a') as f_obj:
json.dump(username, f_obj)
return username
def great_user():
"""Приветствует пользователя по имени."""
username = get_stored_username()
if username:
print("Welcome back, " + username + "!")
else:
username = get_new_username()
print("We'll remember you when you come back, " + username + "!")
def search_user():
username = get_new_username()
if username == "Dort":
print("Это имя уже есть, введите новое значение: ")
get_new_username()
print("We'll remember you when you come back, " + username + "!")
else:
great_user()
search_user()