鱼C论坛

 找回密码
 立即注册
查看: 2229|回复: 5

第26讲动动手问题求解

[复制链接]
发表于 2016-9-27 21:17:55 | 显示全部楼层 |阅读模式
10鱼币
要求如下
小甲鱼.png

以下是我模仿小甲鱼写的代码
  1. print("|---新建用户:N/n---|")
  2. print("|---登入账户:E/e ---|")
  3. print("|---退出程序:Q/q---|")
  4. ALL_users = dict()
  5. while 1:
  6.     NO = input("|---请输入相关指令代码:")
  7.     if NO =="N" or "n":
  8.         name = input("请输入用户名:")
  9.         if name in ALL_users:
  10.             name = input("请输入的用户名已经存在,请重新输入:")
  11.         else:
  12.             ALL_users [name]=input("请输入密码:")
  13.     if NO =="E" or "e" :
  14.         name = input("请输入用户名:")
  15.         if name not in ALL_users:
  16.             input("您输入的用户名不存在,请重新输入:")
  17.         else:
  18.             passwod = input("请输入密码:")
  19.             if passwod == ALL_users[name]:
  20.                 print("登入成功")
  21.             else:
  22.                 passwod =input("请输入的密码错误,请重新输入:")
  23.     if NO=="Q"  or "q" :
  24.             break
复制代码


先不要考虑代码别的问题,就这三个if就出现问题,就是我明明输入的指令是n,按照程序顺序只会执行第一个if,但是我发现按顺序三个if都执行了,如下图,请问这是为什么?
结果.png

最佳答案

查看完整内容

把if语句改为if NO =="N" or NO =="n":,后面的也参照的改。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-9-27 21:17:56 | 显示全部楼层
把if语句改为if NO =="N" or NO =="n":,后面的也参照的改。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-9-28 17:34:30 | 显示全部楼层
没有人知道吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-9-28 21:04:22 | 显示全部楼层
冬雪雪冬 发表于 2016-9-28 18:05
把if语句改为if NO =="N" or NO =="n":,后面的也参照的改。


真的解决了,请问这是错误?知识点是什么?提示下,谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2016-9-28 21:23:01 | 显示全部楼层
寒园 发表于 2016-9-28 21:04
真的解决了,请问这是错误?知识点是什么?提示下,谢谢


if NO=='N' or n    你写成这样 相当于 if (NO=='N') or  ('n')   ,‘n'在if语句中自动转化为True,所以不管你输入什么 If 语句块都会执行,明白了没?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-9-29 20:30:59 | 显示全部楼层
kox 发表于 2016-9-28 21:23
if NO=='N' or n    你写成这样 相当于 if (NO=='N') or  ('n')   ,‘n'在if语句中自动转化为True,所 ...

多谢,明白了
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-2-23 01:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表