自动创建字典,并进行查找,但是会出现一个问题,字典中第一项无法被识别(用相同的数据添加过2个两项)
代码如下
# 定义变量区
n = 0
key = 0
index = 0 # 判断用户是否存在的索引
str1 = "0" # 存储用户名
str_key = "0" # 存储密码
users = {
}
# 实体部分区域
while 1:
print("图书管理系统--\n")
print("请登录后再使用\n")
key = int(input("登录-1,若无账号请注册-3,按其余任意键退出\n"))
if key == 3:
n += 1
print("请输入用户名和密码")
str1 = input("用户名:")
print("\n")
str_key = input("密码:")
# 注意此时不从0开始,从1开始
users[n] = {
"user_num": n,
"name": str1,
"keywords": str_key
}
print(users)
elif key == 1:
print("请输入用户名")
str2 = input("用户名")
# 判断用户是否存在
for i in range(1,len(users)):
if str2 == users[i]["name"]:
index = i
print(index)
break
if index == 0:
print("请先注册")
str3 = input("按下任意键跳转")
continue
# 用户存在,输入密码
print("欢迎尊敬的"+str2+"用户" )
print("请输入密码")
while 1:
key1 = input("密码: ")
if key1 == users[index]["keywords"]:
print("登陆成功")
break
else:
print("请重新输入")
# 开始访问内部界面
else:
break
print(users)
会出现如图所示问题