zoukankan      html  css  js  c++  java
  • if判断与while、for循环语句

    if判断

    在代码命令中,经常会出现需要条件判断后后选择执行方向的情况,在通常情况下我们可以选择if条件判断。

    if条件判断:

    if 条件1 :
    code1
    code2
    code3
    .
    .

    意思是当条件1为真的时候,执行下面的代码块

    if else 条件判断:

    if 条件1 :
        代码块1
    else:
        代码块2
    

    在if条件使用的情况中,既然存在有满足条件的情况,那么也存在不满足条件的情况,在针对满足条件和不满足条件两种情况时,会使用到如上的if...else...的条件语句,其意思是:如果条件1为真时执行代码块1,否则执行代码块2

    if...elif...elif(else)条件判断

    if 条件1 :
    代码块1
    elif: 代码块2
    elif: 代码块3
    .
    .
    .
    elif或else:
    代码块n

    在条件只有ture和false两种分支的时候一个else就足够使用,在条件的分支比较多的时候,就需要elif加入了,elif:后加新的条件,对于最后的一个条件可以使用elif也可以使用else,但elif:后是需要加代码表示条件成立的,else:后就把剩下的所有情况都包括了。

    if嵌套

    如果在某一个if条件下还有多种分支的话就要使用if嵌套了,我们可以把每一次使用if看作一个n岔路口,在经过一个n岔路口后再经过n岔路口就是if的嵌套,而我们的整段代码就是要把这些岔路的地图都画出来。

    if a < b :
        print(A)
        if a < c:
            print(B)
        else:
            print(C)
    else:
        print(d)
    

    流程控制之while循环

    我们使用计算机帮我们做事情,有些事情简单但是需要重复不断地做,用计算机做就非常合适了,这里介绍while循环语句

    while循环

    while 条件1:
        代码块1
    

    意思是当条件1为真的时候,重复执行代码块1直到条件1不成立

    while...break

    a = 0
    while a < 5:
        a += 1
        print(a)
        if a == 3:
            break
    
    1
    2
    3
    

    break的意思是打断、终止,while...break的使用意思是先开始进行while 条件1:后的代码块的循环,如果出现break则终止循环

    while循环的嵌套

    和if相同,while循环也可以嵌套使用,但和if的岔路不同,while我理解成操场的一圈跑道,每循环一次就是跑了一圈,一直跑到条件不满足为止,而循环的嵌套理解成在大圈(400米的操场)中还有小圈(100米的操场)这两个圈只要满足条件就都要跑,直到条件不满足才出圈,小圈的条件不满足就出小圈,大圈的条件不满足就出大圈。

    a = 0
    while a < 15:
        a += 1
        while a < 10:
            a += 2
            print(a)
        print(a)
    
    3
    5
    7
    9
    11
    11
    12
    13
    14
    15
    

    从上面的代码可以看出,当a<15时,进入外层循环(大圈),代码从上而下执行,执行到内层的while时,如果满足条件就进入内层,在内层循环至不满足内层条件再返回外层继续执行,在外层中的下一圈遇到内层while时再次判断是否满足内层条件,如果满足就还要再进内层循环。

    while...continue

    a = 0
    while a < 8:
        a += 1
        if a == 4:
            continue
        print(a)
       
    
    1
    2
    3
    5
    6
    7
    8
    

    continue的意思是继续,我们在这里可以理解成不执行循环中continue后面的代码,开始下一次循环

    while...else

    当while的循环中如果直到循环完成都没有触发break的话,就会执行else下面的代码

    流程控制之for循环

    for循环

    对于知道循环次数的情况我们可以使用for循环,从列表字典中取值也可以使用for循环。

    a_list = ['a','b','c','d','e','f','g']
    for i in a_list:
        print(i)
    
    a
    b
    c
    d
    e
    f
    g
    

    for...break

    a_list = ['a','b','c','d','e','f','g']
    for i in a_list:
        if i == 'f':
            break
        print(i)
    
    a
    b
    c
    d
    e
    

    for循环中break的用法和while循环中类似,都是break后终止循环,上面例子中在循环至i=f时,触发了break,于是循环终止不再输出i

    for...continue

    a_list = ['a','b','c','d','e','f','g']
    for i in a_list:
        if i == 'f':
            continue
        print(i)
    
    a
    b
    c
    d
    e
    g
    

    for循环中break的用法和while循环中类似,都是continue后跳过本次循环,上面例子中在循环至i=f时,触发了continue,于是跳过本次循环,不输出f,然后接着后续循环

    for...else

    a_list = ['a','b','c','d','e','f','g']
    for i in a_list:
        if i == 'f':
            continue
        print(i)
    else:
        print('这是else后的代码')
    
    a
    b
    c
    d
    e
    g
    这是else后的代码
    

    当for的循环中如果直到循环完成都没有触发break的话,就会执行else下面的代码

  • 相关阅读:
    链表和数组的区别在哪里 【微软面试100题 第七十八题】
    关于链表问题的面试题目 【微软面试100题 第七十七题】
    复杂链表的复制 【微软面试100题 第七十六题】
    二叉树两个结点的最低公共父结点 【微软面试100题 第七十五题】
    数组中超过出现次数一半的数字 【微软面试100题 第七十四题】
    对称字符串的最大长度 【微软面试100题 第七十三题】
    Singleton模式类 【微软面试100题 第七十二题】
    数值的整数次方 【微软面试100题 第七十一题】
    旋转数组中的最小元素 【微软面试100题 第六十九题】
    把数组排成最小的数 【微软面试100题 第六十八题】
  • 原文地址:https://www.cnblogs.com/acate/p/10907314.html
Copyright © 2011-2022 走看看