小白求助
dict1={}while 1:
print('|---新建用户:N/n---|')
print('|---登陆账号:E/e---|')
print('|---退出程序:Q/q---|')
Char=input('|---请输入指令代码:')
if Char == 'N' or 'n':
name =input('请输入用户名:')
while 1:
if name in dict1:
name = input('此用户名已经被使用,请重新输入:')
continue
passw = input('请输入密码:')
dict1=passw
print('注册成功,赶紧试试登陆吧^-^')
break
else:
passw = input('请输入密码:')
dict1=passw
print('注册成功,赶紧试试登陆吧^-^')
break
if Char == 'e' or 'E':
name = input('请输入用户名:')
while 1:
if name not in dict1:
name = input('您输入的用户名不存在,请重新输入:')
continue
else:
while 1:
passw = input('请输入密码:')
if passw == dict1:
print('密码输入错误')
continue
else:
print('欢迎进入XXOO系统,请点击右上角X结束程序!')
break
if Char == 'Q' or 'q':
break
想请教一下各位,为什么这段代码我输入Q/q或是E/e执行的还是N/n的那段程序呢? or的用法错了
短路逻辑全为真了
dict1={}
while 1:
print('|---新建用户:N/n---|')
print('|---登陆账号:E/e---|')
print('|---退出程序:Q/q---|')
Char=input('|---请输入指令代码:')
if Char == 'N' or Char =='n':
name =input('请输入用户名:')
while 1:
if name in dict1:
name = input('此用户名已经被使用,请重新输入:')
continue
passw = input('请输入密码:')
dict1=passw
print('注册成功,赶紧试试登陆吧^-^')
break
else:
passw = input('请输入密码:')
dict1=passw
print('注册成功,赶紧试试登陆吧^-^')
break
if Char == 'e' or Char =='E':
name = input('请输入用户名:')
while 1:
if name not in dict1:
name = input('您输入的用户名不存在,请重新输入:')
continue
else:
while 1:
passw = input('请输入密码:')
if passw == dict1:
print('密码输入错误')
continue
else:
print('欢迎进入XXOO系统,请点击右上角X结束程序!')
break
if Char == 'Q' or Char =='q':
break
if Char == 'N' or 'n':
if Char == 'e' or 'E':
改一下
if Char == 'N' or Char =='n':
if Char == 'e' or Char =='E':
不然if Char == 'N' or 'n':相当于if Char == 'N' or true:
只会执行第一个if语句的
页:
[1]