• Python


    前言

    • 在代码中有的时候我们需要程序不断地重复执行某一种操作
    • 例如我们需要不停的判断某一列表中存放的数据是否大于 0,这个时候就需要使用循环控制语句
    • 这里会讲解 for 循环

    python 有两种循环语句,一个是 for、一个是 while 

    while 循环详解

    https://www.cnblogs.com/poloyy/p/15087250.html

    功能和语法

    for 循环变量 in 序列:
        代码块

    序列

    for 语句用于遍历序列中的元素,这里所讲的序列是广义的,可以是:

    • 列表
    • 元组
    • 集合
    • range 对象

    遍历列表

    # 遍历列表
    lis = [1, 2, 3, 4]
    for i in lis:
        print(l)
    
    
    # 输出结果
    1
    2
    3
    4

    遍历元组

    # 遍历元组
    tup = (1, 2, 3, 4)
    for i in tup:
        print(i)
    
    
    # 输出结果
    1
    2
    3
    4

    遍历集合

    # 遍历集合
    se = {1, 2, 3, 4}
    for i in se:
        print(i)
    
    
    # 输出结果
    1
    2
    3
    4

    遍历字典

    # 遍历字典
    dic = {1: 1, 2: 2, "3": 3, "4": 4}
    for i in dic:
        print(i)
    
    
    # 输出结果
    1
    2
    3
    4

    遍历 range

    # 遍历range
    for i in range(5):
        print(i)
    
    
    # 输出结果
    0
    1
    2
    3
    4

    range() 详解:https://www.cnblogs.com/poloyy/p/15086994.html

    双重循环

    # 双重循环
    name = ['张三', "李四", "老汪"]
    score = [60, 70]
    for i in name:
        for j in score:
            print("名:", i, " 分:", j)
    
    
    # 输出结果
    名: 张三  分: 60
    名: 张三  分: 70
    名: 李四  分: 60
    名: 李四  分: 70
    名: 老汪  分: 60
    名: 老汪  分: 70

    多个变量的栗子

    # 多个变量
    for a, b in [("张三", "80"), ("李四", "81"), ("老汪", "82")]:
        print(a, b)
    
    
    # 输出结果
    张三 80
    李四 81
    老汪 82

    break、continue 详解

    https://www.cnblogs.com/poloyy/p/15087598.html

      

    结合 continue + if 的栗子

    # continue + if
    list1 = [1, 2, 3, 4, 5, 6]
    sum = 0
    for i in list1:
        # 如果是奇数,则跳出本次循环
        if i % 2 != 0:
            continue
        # 偶数则加上
        sum += i
    print(sum)
    
    
    # 输出结果
    12

    2+4+6 

    结合 break + if 的栗子

    # break + if
    list1 = [1, 2, 3, 4, 5, 6]
    sum = 0
    for i in list1:
        # 如果是 4 ,则结束 for 循环
        if i == 4:
            break
        # 偶数则加上
        sum += i
    print(sum)
    
    
    # 输出结果

    1+2+3

    if 详解

    https://www.cnblogs.com/poloyy/p/15087130.html 

    在 for 循环中使用 else 语句

    语法格式

    for 变量 in 序列:
        代码块 1
    else:
        代码块 2

    当 for 循环正常完成后,会自动进入到 代码块 2 

    代码栗子一

    检测 number 是否会素数

    1. range(2, number) 会生成 2、3、4、5、6、7、8 的数字序列
    2. 判断 factor 是否可以被 number 整除
    3. 如果是,则 number 不是素数
    4. 如果 for 循环整除结束,就会进到 else 里面,则 number 为素数
    number = 9
    # 2,3,4,5,6,7,8
    for factor in range(2, number):
        print(factor)
        # 9 求模 2、3、4、5、6、7、8
        if number % factor == 0:
            # factor = 3 会进到这里
            is_prime = False
            # 结束 for 循环
            break
    else:
        # 素数
        is_prime = True
    print(is_prime)
    
    
    # 输出结果
    False

    代码栗子二

    # else
    for i in range(10):
        print(i)
        if i == 4:
            break
    else:
        print("执行 else 代码块")
    
    
    # 输出结果
    0
    1
    2
    3
    4

    重点

    • 若想执行 else 里面的代码块,必须是触达到循环条件且为假
    • 如果在循环里面提前结束了循环(break),则不会执行 else 里面的代码块
  • 相关阅读:
    高通量计算框架HTCondor(二)——环境配置
    高通量计算框架HTCondor(一)——概述
    使用NlohmannJson写JSON保留插入顺序
    DEM转换为gltf
    webpack4配置基础
    TypeScript && React
    使用Jest进行单元测试
    如何在TypeScript中使用JS类库
    TypeScript模块系统、命名空间、声明合并
    TypeScript高级类型
  • 原文地址:https://www.cnblogs.com/poloyy/p/15087053.html
Copyright © 2020-2023  润新知