# 验证 verify   very good!

# username = input("请输入用户名").capitalize()
# password = input("请输入密码:").upper()
# verify_code = input("请输入验证码: ")        # 最后发现,这个要放在while循环里面. 第一种情况:
if用户名和密码 嵌套 if验证码:
  好!推荐! 因为先判断的是用户名+密码, 再判断验证码
 while 1:
username = input("请输入用户名").capitalize()
password = input("请输入密码:").upper()
# verify_code = input("请输入验证码: ").capitalize()
if username == "Jack" and password == "":
verify_code = input("请输入验证码: ").capitalize()
if verify_code == "Utf8":
print("登录成功.")
break
else:
print("验证码错误")
else:
print("用户名或者密码错误.")
第二种情况:
if用户名和密码 嵌套 if验证码:
  (这种不是很好,因为先判断的是验证码.然后再判断用户名+密码的)
 while 1:
user_ming = input("请输入用户名:")
user_mima = input("请输入密码: ")
veri_co = input("请输入验证码:")
if veri_co == "TXT":
if user_ming == "瓜瓜" and user_mima == "":
print("登陆成功")
break
else:
print("用户名或密码错误")
else:
print("验证码错了")

总结:  想要首先判断的东西, 就放在第一行if, 其次判断的东西被嵌套(放在次级if).

  Tip: 验证码的判断可以放在第一个if下,次级if上面.

if 嵌套if 的先后顺序的区别 (自测)的更多相关文章

  1. 【分析】浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang)

    [分析]浅谈C#中Control的Invoke与BeginInvoke在主副线程中的执行顺序和区别(SamWang) 今天无意中看到有关Invoke和BeginInvoke的一些资料,不太清楚它们之间 ...

  2. 拦截器(Interceptor)和过滤器(Filter)的执行顺序和区别

    一.引言 本来想记录一下关于用户登陆和登陆之后的权限管理.菜单管理的问题,想到解决这个问题用到Interceptor,但想到了Interceptor,就想到了Filter,于是就想说一下它们的执行顺序 ...

  3. MySQL的join on和 where 的执行顺序和区别,以及各种连接说明

    目录 1.各种连接的解读说明: 1.1.各种连接的含义和说明 1.1.1 所有连接分类 1.1.2 left join 和 left outer join 区别 1.2.神图参考 1.4.一些参考说明 ...

  4. try--catch--finally中return返回值执行的顺序(区别)

    1.try块中没有抛出异常,try.catch和finally块中都有return语句 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 public static int ...

  5. for循环中嵌套setTimeout,执行顺序和结果该如何理解?

    这两天在捣鼓作用域的问题,有的时候知识这个东西真的有点像是牵一发而动全身的感觉.在理解作用域的时候,又看到了一道经典的面试题和例子题. 那就是在for循环中嵌套setTimeout延时,想想之前面试的 ...

  6. mybatis的嵌套查询(嵌套查询nested select和嵌套结果nested results查询)区别

    (转自:http://blog.csdn.net/canot/article/details/51485955) Mybatis表现关联关系比hibernate简单,没有分那么细致one-to-man ...

  7. Java 语句while、do while、for循环、嵌套、for与while的区别、break continue(3)

    for循环语句,双从for嵌套: /* for(初始化表达式:循环条件表达式:循环后的操作表达式) { 执行语句: } */ /*1,变量有自己的作用域.对于for来讲:如果将用于控制循环的增量定义在 ...

  8. sql 语句 嵌套子查询 执行顺序分析

    --创建测试数据create table Student(S# varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10))inser ...

  9. 构造方法与构造块的执行顺序(区别于static)

    小面试题:在类的实例化时,会调用类的构造块(类中的构造块)和构造方法,无论构造方法在前还是在后,都先执行构造块 class Person{ public Person(){ System.out.pr ...

随机推荐

  1. java远程调试(idea)

    遇见一个怪异问题,无奈线上数据库有限制,只能远程调试下代码.突然发现,远程调试代码真的好简单,简单记录下操作步骤. 1.在idea里创建一个Remote,远程连接的入口. 找到 Edit Config ...

  2. Java Generator

    以前我以为只有Python才会有generator,看来当时的我才年轻,后来认真研读<Thinking in Java>之后大有感悟,原来Java亦有generator,故做一次记录分享. ...

  3. python中逻辑运算符“+”的特殊之处

    num = num + num 与 num += num 的区别(其他语言中这两种方式可以划等号,但是python中不可以): num = num + num: num = [100] def tes ...

  4. Extjs 在项目中碰到问题

    1.切换tabpanel,新建tab关闭后再新建报错,在火狐下报错 TypeError: el is null   el.addCls.apply(el, arguments); 这个我在下一篇文章中 ...

  5. IIS7下,显示PHP错误(不显示500错误,而显示详细错误)

    玛德,IIS就是个坑,害得老子进行摸索了那么久,才找到了解决方法: 1.除了将php.ini配置为: display_errors = on; error_reporting = E_ALL & ...

  6. linux 系统filezilla无法上传文件 553 Could not create

    做网站过程中遇见了很多问题,解决了但是解决方法过一段时间就会遗忘,整理出来以便以后查看. 响应: 553 Could not create file.错误: 严重文件传输错误 解决方案: 一.必须将站 ...

  7. 微信服务器配置令牌(Token)

    实现步骤: 第一步:填写服务器配置 登录微信公众平台官网后,在公众平台后台管理页面 - 开发者中心页,点击“修改配置”按钮,填写服务器地址(URL).Token和EncodingAESKey,其中UR ...

  8. js实现的玫瑰花

    <html> <head> <meta charset="utf-8"> <title>开心快乐每一天</title> ...

  9. codechef QCHEF(不删除莫队)

    题意 题目链接 给出长度为\(n\)的序列,每次询问区间\([l, r]\),要求最大化 \(max |x − y| : L_i ≤ x, y ≤ R_i and A_x = A_y\) Sol 标算 ...

  10. 怎么在ReactNative里面使用Typescript

    今天来搞一搞怎么搭建一个可以使用Typescript的ReactNative环境好吧,一句废话不多说,直接开始好吧 1.全局安装create-react-native-app yarn global ...