• day03_流程控制语句


    概述

    流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组 合成能完成一定功能的小逻辑模块。 其流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:

    • 顺序结构
    • 分支结构
    • 循环结构

    分支结构

    条件成立执行某些代码,条件不成立则不执行这些代码。

    单 if 语法

     代码示例

    # 需求分析:如果用户年龄大于等于18岁,即成年,输出"已经成年,可以上网"。
    age = 20
    if age >= 18:
        print('已经成年,可以上网')
    
    # 下方的代码没有缩进到if语句块,所以和if条件无关
    print('我是无论条件是否成立都要执行的代码')

    if...else...语法

    条件成立执行if下方的代码; 条件不成立执行else下方的代码。

     代码示例

    # 获取到用户输入的年龄,判断是上网还是写作业
    age = int(input('请输入您的年龄:'))
    if age >= 18:
        print(f'您的年龄是{age},已经成年,可以上网')
    else:
        print(f'您的年龄是{age},未成年,请自行回家写作业')
    
    # 下方的代码没有缩进到if语句块,所以和if条件无关
    print('我是无论条件是否成立都要执行的代码')

    if多重判断语法

    代码示例

    '''
    如果年龄小于18的情况为童工,不合法;
    如果年龄在18-60岁之间为合法工龄;
    大于60岁为法定退休年龄。
    '''
    age = int(input('请输入您的年龄:'))
    if age < 18:
        print(f'您的年龄是{age},童工一枚')
    # age >= 18 and age <= 60可以化简为18 <= age <= 60。
    elif (age >= 18) and (age <= 60):
        print(f'您的年龄是{age},合法工龄')
    elif age > 60:
        print(f'您的年龄是{age},可以退休')

    注意事项:

    if语句中,如果条件成立执行了某些代码,那么其他的情况的代码将不会执行。

    if嵌套语法

    执行流程

    代码示例

    """
    如果有钱可以上车,没钱不能上车;
    上车后如果有空座,则可以坐下;
    如果没空座,就要站着。怎么书写程序?
    """
    # 假设用 money = 1 表示有钱, money = 0表示没有钱;
    #        seat = 1 表示有空座,seat = 0 表示没有空座
    money = 1
    seat = 0
    if money == 1:
        print('土豪,不差钱,顺利上车')
        if seat == 1:
            print('有空座,可以坐下')
        else:
            print('没有空座,站等')
    else:
        print('没钱,不能上车,追着公交车跑')

    三目运算符,语法如下

    代码示例

    """
    语法
    条件成立执行的表达式 if 条件 else 条件不成立执行的表达式
    """
    a = 1
    b = 2
    
    c = a if a > b else b
    print(c)
    
    # 需求: 有两个变量,比较大小 如果变量1 大于 变量2 执行 变量 1 - 变量2; 否则 变量2 - 变量1
    aa = 10
    bb = 6
    cc = aa - bb if aa > bb else bb - aa
    print(cc)

    循环结构

    循环的作用:让代码更高效的重复执行。在Python中,循环分为whilefor两种,最终实现效果相同。

    while循环的语法

     

     代码示例

    # 需求: 1-100偶数累加和 -- 2 + 4 + 6 + 。。。+ 100 = 结果 -- 输出结果
    
    i = 1  # 控制循环的次数
    result = 0  # 存储最终结果
    while i <= 100:
        # 条件语句 -- if
        if i % 2 == 0:
            # 加法运算
            result += i
        i += 1
    
    # 输出结果2550
    print(result)

    while...else语法:

    注意事项:

    • 循环可以和else配合使用,else下方缩进的代码指的是当循环正常结束之后要执行的代码。
    • 如果是break终止循环的情况,else下方缩进的代码将不执行。
    • continue是退出当前一次循环,继续下一次循环,所以该循环在continue控制下是可以正常结束的,当循环结束后,则执行了else缩进的代码。

    代码示例

    i = 1
    while i <= 5:
        if i == 3:
            print('这遍说的不真诚')
            break
        print('媳妇儿,我错了')
        i += 1
    else:
        print('媳妇原谅我了,真开心,哈哈哈哈')

    执行结果

     while循环嵌套

    所谓while循环嵌套,就是一个while里面嵌套一个while的写法,每个while和之前的基础语法是相同的。

    语法:

    执行流程

     打印九九乘法表,代码示例

    # 重复打印9行表达式
    j = 1
    while j <= 9:
        # 打印一行里面的表达式 a * b = a*b
        i = 1
        while i <= j:
            print(f'{i}*{j}={j*i}', end='	')
            i += 1
        print()
        j += 1

    for循环语法

    代码示例

    str1 = 'hello'
    for i in str1:
        print(i)

    for...else语法:

     注意事项:

    • else指的是循环正常结束之后要执行的代码,即如果是break终止循环的情况,else下方缩进的代码将不执行。
    • 因为continue是退出当前一次循环,继续下一次循环,所以该循环在continue控制下是可以正常结束的,当循环结束后,则执行了else缩进的代码。

    代码示例

    str1 = 'itheheloo'
    for i in str1:
        if i == 'e':
            print('遇到e不打印')
            break
        print(i)
    else:
        print('循环正常结束之后执行的代码')

    执行结果

    退出循环的方式:break和continue

    break和continue是循环中满足一定条件退出循环的两种不同方式。

    break执行之后终止此循环

    代码示例

    # break:当某些条件成立,退出整个循环
    # 循环吃5个苹果,吃完第3个吃饱了,第4 和 5 不吃了(不执行) -- == 4 或 >3
    i = 1
    while i <= 5:
        # 条件:如果吃到4 或 > 3 打印吃饱了不吃了
        if i == 4:
            print('吃饱了,不吃了')
            break
        print(f'吃了第{i}个苹果')
        i += 1

    执行continue语句之后,退出当前一次循环继而执行下一次循环代码

    代码示例

    # continue : 当条件成立,退出当前一次循环,继而执行下一次循环
    # 吃5个苹果 -- 循环; 吃到第3个吃出一个虫子,第三个不吃了,没吃饱,继续吃4和5个苹果 -- 只有第三个不吃
    i = 1
    while i <= 5:
        # 条件
        if i == 3:
            print('吃出一个大虫子,这个苹果不吃了')
            # 如果使用continue,在continue之前一定要修改计数器,否则进入死循环
            i += 1
            continue
        print(f'吃了第{i}个苹果')
        i += 1
  • 相关阅读:
    从输入网址到显示网页简介
    java异常及日志注意事项
    java-Excel导出中的坑
    python-arcade时钟
    tkinter-clock实例
    http远程调用原生get、post模板
    eclipse使用小技巧
    sublime text3安装Package Control和Vue Syntax Highlight
    双十一剁手了吗
    Nginx配置HTTPS
  • 原文地址:https://www.cnblogs.com/wurengen/p/15349678.html
Copyright © 2020-2023  润新知