循环

2020-02-18  本文已影响0人  GaoYuan117

01. 程序的三大流程

02. while 循环基本使用

2.1 while 语句基本语法

初始条件设置 —— 通常是重复执行的 计数器

while 条件(判断 计数器 是否达到 目标次数):
    条件满足时,做的事情1
    条件满足时,做的事情2
    条件满足时,做的事情3
    ...(省略)...
    
    处理条件(计数器 + 1)

注意

# 计数器
i = 5

while i > 0:
    i -= 1
    print("Hello Python")

print("循环结束:%s" % i)

注意:循环结束后,之前定义的计数器条件的数值是依旧存在的

死循环

由于程序员的原因,忘记 在循环内部 修改循环的判断条件,导致循环持续执行,程序无法终止!

2.2 Python 中的计数方法

常见的计数方法有两种,可以分别称为:

因此,大家在编写程序时,应该尽量养成习惯:除非需求的特殊要求,否则 循环 的计数都从 0 开始

2.3 循环计算

在程序开发中,通常会遇到 利用循环 重复计算 的需求

遇到这种需求,可以:

  1. while 上方定义一个变量,用于 存放最终计算结果
  2. 在循环体内部,每次循环都用 最新的计算结果更新 之前定义的变量
"""
2.使用while 计算0~100的和
"""
result = 0  # 计算结果
num = 0  # 计数器

while num <= 100:
    result += num
    num += 1

print("0~100的和:", result)

"""
3.使用while 计算0~100偶数的和
"""
result = 0
num = 0

while num <= 100:
    if num % 2 == 0:
        result += num
    num += 1

print("0~100的偶数的和 = ", result)

03. break 和 continue

breakcontinue 是专门在循环中使用的关键字

breakcontinue 只针对 当前所在循环 有效

循环流程图.png

3.1 break

i = 0

while i < 10:

    # break 某一条件满足时,退出循环,不再执行后续重复的代码
    # i == 3
    if i == 3:
        break

    print(i)

    i += 1

print("over")

break 只针对当前所在循环有效

3.2 continue

i = 0

while i < 10:

    # 当 i == 7 时,不希望执行需要重复执行的代码
    if i == 7:
        # 在使用 continue 之前,同样应该修改计数器
        # 否则会出现死循环
        i += 1

        continue

    # 重复执行的代码
    print(i)

    i += 1

continue 只针对当前所在循环有效

04. while 循环嵌套

4.1 循环嵌套

while 条件 1:
    条件满足时,做的事情1
    条件满足时,做的事情2
    条件满足时,做的事情3
    ...(省略)...
    
    while 条件 2:
        条件满足时,做的事情1
        条件满足时,做的事情2
        条件满足时,做的事情3
        ...(省略)...
    
        处理条件 2
    
    处理条件 1
"""
4.打印9x9乘法表
"""

# 行数
row = 1

while row <= 9:

    # 每一行都是好从第一列开始
    cal = 1
    while cal <= row:
        # end="" 表示向控制台输出内容结束之后,不会换行 \t 制表符
        print("%d x %d = %d" % (cal, row, (row * cal)), end="\t")
        cal += 1

    # 单纯的换行
    print('')

    # 行加一
    row += 1

字符串中的转义字符

制表符 的功能是在不使用表格的情况下在 垂直方向 按列对齐文本

转义字符 描述
\\ 反斜杠符号
\' 单引号
\" 双引号
\n 换行
\t 横向制表符
\r 回车

05. for 循环

for 变量 in 集合:
    
    循环体代码
else:
    没有通过 break 退出循环,循环结束后,会执行的代码

# 循环0-10
for i in range(10):
    print(i)

name_list = ["小王", "小马", "小明"]

# 循环列表
for name in name_list:
    print(name)

# 循环打印下标+名字
for i, name in enumerate(name_list):
    print(i, name)

# else的使用
students = [
    {"name": "阿土",
     "age": 20,
     "gender": True,
     "height": 1.7,
     "weight": 75.0},
    {"name": "小美",
     "age": 19,
     "gender": False,
     "height": 1.6,
     "weight": 45.0},
]

find_name = "阿土"

for stu_dict in students:

    print(stu_dict)

    # 判断当前遍历的字典中姓名是否为find_name
    if stu_dict["name"] == find_name:
        print("找到了")

        # 如果已经找到,直接退出循环,就不需要再对后续的数据进行比较
        break

else:
    print("没有找到")

print("循环结束")

上一篇下一篇

猜你喜欢

热点阅读