zoukankan      html  css  js  c++  java
  • python学习笔记23:基础之控制流

    1. if...elif...else...

    if xxx:
        a
    elif yyy:
        b
    else:
        c
    

    2. while...else...

    while xxx:
       a
    else:
       b
    

    while对应的else语句在while循环正常结束的情况下会被执行.
    如果while循环是通过break跳出的,则else不执行。
    这种else可以在这种情况下:通过循环寻找某个东西,如果找到,则break退出,如果没找到,则执行完全部循环,然后执行else语句报告没有找到。

    例1:

    import random  
    import re  
      
    target = random.randint(0, 100)  
      
    cnt = 6  
    i = 0  
      
    while i<cnt:  
        guess = input('Round {i}, enter a num in [0,100]: '.format(i=i+1))  
        i += 1  
      
        guess = int(guess)  
        if guess>target:  
            print('Too large')  
        elif guess<target:  
            print('Too small')  
        elif guess==target:  
             print('Pass, target is {target}'.format(target=target))  
        break # 如果猜中数字,则跳出循环,不会执行else语句  
    else:  
        # 如果循环正常结束仍没猜中,执行else语句,报告Fail  
        print('Fail, target is {target}, You Have try for {cnt} times'.format(target=target, cnt=cnt))   
      
    输出:  
    Round 1,enter a num in [0,100]: 50  
    Too small  
    Round 2,enter a num in [0,100]: 75  
    Too small  
    Round 3,enter a num in [0,100]: 88  
    Too small  
    Round 4,enter a num in [0,100]: 96  
    Too small  
    Round 5,enter a num in [0,100]: 98  
    Too small  
    Round 6,enter a num in [0,100]: 99  
    Too small  
    Fail: target is 100, You Have Try for 6 times  
    

    3. for...else...

    #range返回一个列表,不包含结束值。  
    for i in range(1,5):  
        print(i)  
    else:  
        print('over')  
    

    for对应的else语句类似于while对应的else语句,在for循环正常结束的情况下会被执行,具体解释见while处的解释。

    4. break 和 continue

    break: 终止循环
    continue: 进入下一轮循环

  • 相关阅读:
    ubuntu16.04安装ibus中文输入法
    apt --fix-broken install
    fuelgauge
    make flash FLASH_CONFIG=jtag_full
    使用android ndk编译boost动态库
    RK3288的gpio设置
    RK3288 GPIO 输出问题
    HDU-2586-裸LCA入门-tarjan离线
    uva-11324-SCC+dp
    HDU-2767-tarjan/Kosaraju求scc
  • 原文地址:https://www.cnblogs.com/gaiqingfeng/p/13254645.html
Copyright © 2011-2022 走看看