• Python-条件控制及循环


    一、条件控制

    Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块,而计算机很多自动化任务,也是根据条件判断来实现的。

    我们可以通过下图,来了解一下条件语句执行的过程

    语法:

    if condition_1:
        statement_block_1
    elif condition_2:
        statement_block_2
    else:
        statement_block_3

    说明:

    如果 "condition_1" 为 True 将执行 "statement_block_1" 块语句
    如果 "condition_1" 为False,将判断 "condition_2"
    如果"condition_2" 为 True 将执行 "statement_block_2" 块语句
    如果 "condition_2" 为False,将执行"statement_block_3"块语句
    #Python中用elif代替了else if
    语法格式注意:
    a、每个条件后面都要使用冒号(:),表示接下来是满足条件后要执行的语句块。
    b、使用缩进来划分语句,相同缩进为要在一起执行的语句块
    c、在Python没有switch-case语句

    例子:

    age = int(input("请输入年龄:"))
    if age > 18:
        print("你猜大了")
    elif age < 18:
        print("你猜小了")
    else:
        print("Good!猜对了")
    输出:
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    请输入年龄:12
    你猜小了

    if判断语句的常用操作符:

    if的嵌套

    num=int(input("输入一个数字:"))
    if num%2==0:
        if num%3==0:
            print ("你输入的数字可以整除 2 和 3")
        else:
            print ("你输入的数字可以整除 2,但不能整除 3")
    else:
        if num%3==0:
            print ("你输入的数字可以整除 3,但不能整除 2")
        else:
            print  ("你输入的数字不能整除 2 和 3")
    输出:
    输入一个数字:6
    你输入的数字可以整除 2 和 3

    二、循环语句-While循环

    1、语法

    while 判断条件:           #条件成立就循环
        语句

    2、例子

    i = 0
    y = 0
    while True:
        i += 1
        print(i)         #打印1到100的数
        y = y + i
        if i >= 100:    
            print(y)     #打印1到100 的和
            break      #这里我们用到了break 他是一个跳出语句,我们一会会说
    输出看隐藏代码
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    5050
    View Code

    有得时候我们希望用户无限输入,这个时候我们就用到无限循环了,看下例子:

    # var = 1
    # while var == 1:         #这里我们还可以用True
    while True:
        num = int(input("输入一个数字:"))
        print("你输入的数字是:",num)

    while循环使用else语句

    说明:else代码块是在while循环正常结束的时候才执行,我们来看两个例子

    例:

    i = 0
    y = 0
    while i < 6:
        i += 1
        print(i)       #打印I+1之后的i
        y = y + i   
        if i > 5:      #这个时候i等于6了
            print(y)     #打印y
                  #这里我们用到了break 他是一个跳出语句,我们一会会说
    else:
        print("执行了else语句")
    #while 循环正常退出了,打印了else后面的语句
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    1
    2
    3
    4
    5
    6
    21
    执行了else语句

    非正常退出的,也就是使用break跳出的,不执行else后面的语句

    例:

    i = 0
    y = 0
    while i < 6:
        i += 1
        if i == 3:
            continue    #等于3的时候不打印,继续下次循环
        print(i)       #打印I+1之后的i
        y = y + i
        if i > 5:      #这个时候i等于6了
            print(y)     #打印y
                  #这里我们用到了break 他是一个跳出语句,我们一会会说
    else:
        print("执行了else语句")
        
    #这个例子告诉我们continue 并不是跳出循环语句
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    1
    2
    4
    5
    6
    18
    执行了else语句
    
    下面我们看个break的
    i = 0
    y = 0
    while i < 6:
        i += 1
        if i == 3:
            #continue    #等于3的时候不打印,继续下次循环
            break       #换成了break
        print(i)       #打印I+1之后的i
        y = y + i
        if i > 5:      #这个时候i等于6了
            print(y)     #打印y
                  #这里我们用到了break 他是一个跳出语句,我们一会会说
    else:
        print("执行了else语句")
    #看输出当i等于3的时候之间跳出了循环,也没有打印else之后的语句
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    1
    2

    简单的语句组

    类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:

    while (True): print ('你是大傻逼!!!')     #(括号里可以是任何条件语句)
    #看输出,简直是无限输出
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!
    你是大傻逼!!!

    好了,while基本上就这些了,我们来看一下,另一个循环,for。

    三、循环语句-for

    for循环可以遍历任何序列的项目,例:列表、字典、或者一个字符

    语法:

    for <variable> in <sequence>:     
        <statements>
    else:
        <statements>

    例子:

    for i in range(10):    #通过range,列出从0-9的数字并打印
        print(i)
    输出:
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    ============================================
    
    for i in "Python":
        print(i)
    #循环字符串
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    P
    y
    t
    h
    o
    n
    
    ============================================
    list = ["Alex","huige","lisa",1,2]    #定义字典
    for i in list:    #遍历字典
        print(i)  
    #输出如下:
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    Alex
    huige
    lisa
    1
    2
    ============================================
    dict = {"name":"Alex","Age":18,"salary":3000000}
    for i in dict: #遍历字典键
        print(i)   # 打印键
    输出
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    salary
    Age
    name

    for 循环步长,意思是每循环一次,走的步数。

    例子:

    for i in range(0,10,2):    #第一个0代表开始的数字,第二个10位循环次数,第三个2代表步长
        print(i)
    #输出:
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    0
    2
    4
    6
    8

    for循环字典,打印字典的值

    例:

    dict = {"name":"Alex","Age":18,"wage":30000,"Class":"16期"}
    for i in dict:      #循环字典
        print(dict[i])
    输出:
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    Alex
    18
    30000
    16期
    Alex

    四、循环语句中的break和continue

    1、break,跳出当前循环。

    例:

    for i in "python":
        if i == "h":      #当i等于h的时候跳出循环
            break
        else:
            print("i的值是:%s" % (i))
    # 输出:
    # C:Python35python.exe D:/linux/python/all_test/listandtup.py
    # i的值是:p
    # i的值是:y
    # i的值是:t
    
    var = 10
    while var > 0:
        print("打印var的值:%s" % (var))
        var -= 1      #var每次减去1,再赋值给自己
        if var == 5:   #当var等于5的时候跳出循环
            break
    print("Bay")
    # 输出:
    # C:Python35python.exe D:/linux/python/all_test/listandtup.py
    # 打印var的值:10
    # 打印var的值:9
    # 打印var的值:8
    # 打印var的值:7
    # 打印var的值:6
    # Bay

    2、countinue用法

    作用:跳过当次循环,执行下次循环

    例子:

    for i in "python":
        if i == "h":      #当i等于h的时候,不执行这次循环,直接执行下次循环
            continue
        else:
            print("i的值是:%s" % (i))
    #输出:
    # C:Python35python.exe D:/linux/python/all_test/listandtup.py
    # i的值是:p
    # i的值是:y
    # i的值是:t
    # i的值是:o
    # i的值是:n 
    
    
    var = 5
    while var > 0:
        var -= 1      #var每次减去1,再赋值给自己
        if var == 3:   #当var等于3的时候直接循环下次
            continue
        print("打印var的值:%s" % (var))
    print("Bay")
    # 输出
    # C:Python35python.exe D:/linux/python/all_test/listandtup.py
    # 打印var的值:4
    # 打印var的值:2
    # 打印var的值:1
    # 打印var的值:0
    # Bay

    五、pass语句

    作用:Python pass是空语句,是为了保持程序结构的完整性;pass不做任何事情,一般用占位语句。

    例子:

    for i in "python":
       if i == 'o':
          pass
          print ("执行pass块")
       print ("当前字母:%s" %(i) )
    输出:
    C:Python35python.exe D:/linux/python/all_test/listandtup.py
    当前字母:p
    当前字母:y
    当前字母:t
    当前字母:h
    执行pass块
    当前字母:o
    当前字母:n

    结束

  • 相关阅读:
    在不申请第三方变量的情况下交换a和b
    指针(pointer)的使用
    数组和链表(arrary & linkedlist)
    Python的学习计划
    Python——函数
    Python——文件操作
    Python——深浅Copy
    我发现的新大陆——好用的~
    我发现的新大陆——好吃儿的
    我发现的新大陆——好玩儿的
  • 原文地址:https://www.cnblogs.com/Plynn/p/6344341.html
Copyright © 2020-2023  润新知