我目前正在使用JSON制作一个用户名/密码程序,但我有一个重复帐户的问题。我试图编写一种方法来防止用户创建JSON数据库已经包含的用户名,但它不太工作。
问题:
- 询问用户名,即使尝试的文件为空,也不询问密码
- 有时说用户名已经存在,但无论如何都会创建重复的帐户。
我想让程序做什么: - 请输入新的用户名/密码
- 如果用户名是唯一的,则将新帐户放入文件中
- 如果用户名已被拥有,则不要添加新帐户并转到函数的开头。
这是我试过的代码,但是我提到的问题使它无效
def createUser():
global accounts
nUsername = input("Create Username » ")
for item in accounts:
if item[0] == nUsername:
return "Already Exsists!"
else:
nPassword = input("Create Password » ")
entry = [nUsername, nPassword]
accounts.append(entry)
accounts = accounts[:500000]
autoSave()
字符串
对于任何想知道的人来说,这就是autosave()
函数:
def autoSave():
with open("Accounts.json", "w") as outfile:
json.dump(accounts, outfile)
型
下面是JSON文件的内部:
[["ExampleUsername", "BadPasswrdo14130"]]
型
3条答案
按热度按时间9cbw7uwe1#
有很多错误,所以我将使用注解来解释更改:
字符串
brccelvz2#
我会这样做:
字符串
bvn4nwqk3#
修正了我代码中的一个问题,但又出现了另一个问题。
字符串