|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 949410591 于 2017-10-17 04:00 编辑
这个是题目
这个是我写的代码
#这个是用户和密码的字典
dict1 ={}
#这个是创建新用户
def new(x):
name = input('请输入用户名:')
while True:
if name in x:
name = input('此用户名已经被使用,请重新输入:')
continue
else:
break
code = input('请输入用户密码:')
dict2 = {name : code}
x.update(dict2)
print('注册成功,赶紧试试登录\n')
#这个是登录系统
def den(y):
name = input('请输入用户名:')
while True:
if name in y:
break
else:
name = input('该用户名不存在,请重新输入:')
continue
while True:
code = input('请输入密码:')
if code == y[name]:
return 1
break
else:
code = input('密码输入错误:请重新输入')
continue
#这个是结束程序
def over():
print('欢迎进入xxoo系统,请点右上角的x结束程序!')
#这个是总系统
def system():
while True:
print('|--- 新建用户:N/n ---|')
print('|--- 登录账号:E/e ---|')
print('|--- 退出程序:Q/q ---|')
alpha = input('|---请输入指令代码:')
if alpha in 'Nn':
new(dict1)
continue
elif alpha in 'Ee':
up(dict1)
over()
break
elif alpha in 'Qq':
over()
break
else:
print('输入错误指令代码请重新输入\n')
system()
如果运行程序,不输入任何东西,直接打回车会发生这个
主要问题在总系统这
print('|--- 新建用户:N/n ---|')
print('|--- 登录账号:E/e ---|')
print('|--- 退出程序:Q/q ---|')
alpha = input('|---请输入指令代码:\n')
# 在这里不输入任何东西,按enter,程序是直接运行下一行代码
然后就直接进入创建新用户的函数里了 ,这里为什么if 直接就跳过了???直接按enter,输入不就是空字符串吗?那直接运行下一段代码,空字符串也不在‘Nn’里呀 0.0
if alpha in 'Nn':
new(dict1)
continue
我现在已经知道怎么解决这个bug,但是这个原因是什么我就不清楚了,望有大佬帮忙
|
|