我正在尝试编写一个允许我从文件中获取用户名和密码的程序。我觉得自己走在正确的轨道上但是,当我运行程序来测试它是否有效时,我得到了一个:
名称错误:全局名称未定义用户名。
我出错的任何想法?如果格式化已关闭,我道歉。
def login():
UserName = input("Please enter your user name: ")
passw = input("Please enter your password: ")
check(UserName, passw)
return UserName, passw
def check(user, password):
pword = {}
for line in open('unames_passwords.txt','r'):
user, password = line.split()
pword[user] = password
if user == UserName and password == passw:
return True
print("Thank you for logging in.")
else:
print("Username or password is incorrect")
def main():
login()
main()
答案 0 :(得分:3)
您的check
函数没有任何名为UserName
的变量
相反,它有一个名为user
的参数,然后由文件中的行覆盖。
您需要将参数更改为唯一名称,然后使用该名称。