下面的代码旨在询问所需的用户名,然后创建它。
我想告诉用户何时已经使用了用户名。这样可行。
但是,每当输入一个尚不存在的用户名时,我希望执行所有if a != 1:
块,但这不会发生。那是为什么?
以下是我已缩小到问题发生位置的代码片段:
UsernameRequest = input("What would you like your username to be set? ")
fname = UsernameRequest + ".txt"
try:
f2 = open(fname, 'r')
a = f2.readline(1)
if a == "a":
print ("This username is already taken!")
f2.close()
a = 1
except:
b = 1
if a != 1:
f = open(fname, 'w')
PasswordRequest = input("What would you like your password to be? ")
f.write("abcde" + '\n')
f.write(UsernameRequest)
f.write('\n' + PasswordRequest)
f.close()
print ("User created! Welcome to SterlOS!")
Login()
break
答案 0 :(得分:0)
我认为变量a
的范围是这里的问题。尝试在try块之外声明a
。