Одна проблема, связанная с этой функцией, заключается в том, что usernames
не определена, а другая заключается в том, что оба конца блока if
вернут False
.
. Одним из способов решения этих проблем будет
def checkUsername(usernames_file):
fp = open(usernames_file, 'r') # the default mode is 'r', but it's explicit here
usernames = fp.read()
userName = str(input("WHAT IS YOUR NAME?"))
if userName in usernames:
print("WELCOME BACK" + userName)
print("LET\'S GET STARTED")
fp.close()
return True # note, not False
else:
fp.write(userName)
print("WELCOME TO THE SYSTEM!")
fp.close()
return False
Этот фрагмент отличается по нескольким причинам, но он также игнорирует две вероятные ошибки, с которыми вы также можете столкнуться: чувствительность к регистру на входах (строка input(...)
может быть любой, которую хочет пользователь),и разделение строк в usernames_file
.Надеюсь, это подтолкнет вас в правильном направлении.