|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这里是我的代码,问题出现在最后两行,比如说,我输入名字梦梦
按照题目要求,需要print出,小甲鱼、不二、梦梦,
而我只输出梦梦,为什么会这样
- record={"小甲鱼":"I_love_FishC","不二如是":"FishC5201314"}
- name = input("请输入用户名:")
- if name in record:
- print("该用户名已被注册!")
- name = input("请重新输入用户名:")
- else:
- pass
- passwd=input("请输入密码:")
- record[name]=passwd
- for each in name:
- print(f"目前注册的用户有:{name}")
复制代码 正确的代码
- fc_db = {"小甲鱼":"I_love_FishC", "不二如是":"FishC5201314"}
-
- name = input("请输入用户名:")
- while True:
- if fc_db.get(name) != None:
- print("该用户名已被注册!")
- name = input("请重新输入用户名:")
- else:
- break
-
- passwd = input("请输入密码:")
- fc_db[name] = passwd
- print("------------------")
- print("目前已注册的用户有:")
- for each in fc_db:
- print(each)
复制代码
你的代码在最后两行使用了 `name` 变量来输出注册的用户信息,然而这个变量只保存了当前输入的用户名,并没有保存之前已经注册的用户名。所以每次循环输出的都是当前输入的用户名。
正确的做法是,在前面使用一个字典(如代码中的 `fc_db`)来存储已经注册的用户名和密码,然后在最后的循环里遍历字典的键(即用户名),将其逐个输出即可。
所以:
- fc_db = {"小甲鱼":"I_love_FishC", "不二如是":"FishC5201314"}
-
- name = input("请输入用户名:")
- while True:
- if fc_db.get(name) != None:
- print("该用户名已被注册!")
- name = input("请重新输入用户名:")
- else:
- break
-
- passwd = input("请输入密码:")
- fc_db[name] = passwd
- print("------------------")
- print("目前已注册的用户有:")
- for each in fc_db:
- print(each)
复制代码
|
|