我想将字典中的原始输入元素保存到变量中。但这似乎不起作用,因为信息被保存为字符串,我不知道为什么。下面是我正在做的一个示例:
accounts = {}
def accountcreater():
accountname = raw_input("Account Name: ")
accountpassword = raw_input("Account Password: ")
accountUUID = 1
accountUUID += 1
accounts[accountname] = {"password":accountpassword,"UUID":accountUUID}
def login():
loginusername = raw_input("Account Name: ")
loginpassword = raw_input("Account Password: ")
for usernames in account:
if usernames == loginusername:
accountpassword = accounts[usernames][???]
accountpassword = accounts[usernames][???]
else:
pass
这是一个非常简单的代码示例。现在是“[??”的部分???]“我不知道该放什么。我试着把这个代码:
accountpassword = accounts[usernames][password]
accountpassword = accounts[usernames][UUID]
但这似乎不起作用,因为它说密码和UUID没有定义。不过,我似乎可以只输入[用户名],它会工作得很好。我还试着提出以下几点:
accountpassword = accounts[usernames]['password']
accountpassword = accounts[usernames]['UUID']
这会产生以下错误:字符串索引必须是整数,而不是str。 我不知道为什么我的鳕鱼不能工作。请帮帮我!:D谢谢
使用字典的原因是为了避免重复使用帐户。使用用户键入的用户名作为键来访问
accounts
中的记录,然后使用文本字符串“password”作为该记录的键来获取用户的密码。然后将其与用户键入的密码进行比较。你知道吗你在这里用“for”真的不合适,因为accounts是一本字典而不是一个列表。你知道吗
因为accounts是一个字典,所以您需要检查所提供的用户名是否在帐户.密钥(),然后检查该条目是否有正确的密码。你知道吗
所以,像这样的方法是可行的:
现在,如果帐户是一个列表,那么您需要for循环。格言允许你避免这种情况。你知道吗
相关问题 更多 >
编程相关推荐