保姆式讲解—Python循环知识点,新手小白也能懂

一、Iterable可迭代类型

可迭代对象就像是一个装着东西的盒子,您可以一个一个地把里面的东西拿出来看。

比如,像我们常见的列表 [1, 2, 3] 、元组 (4, 5, 6) 、字符串 "Hello" ,它们都是可迭代对象。

当您想一个一个地处理这些对象里的元素时,就可以使用 for 循环进行遍历。比如:

for num in [1, 2, 3]:
    print(num)

解释:这里的 [1, 2, 3] 就是可迭代对象,for 循环会依次取出里面的 1 、2 、3 ,然后执行 print(num) 这部分代码。

二、for两种常见形式

1.遍历一个可迭代对象(如列表、元组、字符串等):
# 遍历列表
my_list = [10, 20, 30, 40, 50]
for num in my_list:
    print(num)                       # 结果:10, 20, 30, 40, 50

# 遍历元组
my_tuple = ('apple', 'banana', 'orange')
for fruit in my_tuple:
    print(fruit)                     # 结果:apple,banana,orange

# 遍历字符串
my_string = "Hello"
for char in my_string:
    print(char)                     # 结果:H e l l o
2.通过 range() 函数生成一个数字序列来控制循环次数 :
# 基本用法
for i in range(5):
    print(i)                      # 结果:0 1 2 3 4

# 指定起始值和结束值
for j in range(2, 8):
    print(j)                      # 结果:2 3 4 5 6 7

# 指定起始值、结束值和步长
for k in range(1, 10, 2):         #  range(起始值,结束值,步长)
    print(k)

               # 结果:1 3 5 7 9

解释:

  1. for i in range(5): 这里的 range(5) 会生成一个包含 0、1、2、3、4 的数字序列。所以循环会依次让 i 取到这些数字,然后执行循环体中的 print(i) ,从而依次输出 0、1、2、3、4 。

  2. for j in range(2, 8)range(2, 8) 会生成一个从 2 开始(包括 2),到 8 结束(不包括 8)的数字序列,即 2、3、4、5、6、7。循环会让 j 依次取到这些数字并输出。

  3. for k in range(1, 10, 2)range(1, 10, 2) 表示从 1 开始(包括 1),到 10 结束(不包括 10),步长为 2。生成的数字序列是 1、3、5、7、9 。循环中 k 会依次取到这些数字并输出。

总结:range() 函数通过不同的参数设置,可以灵活地控制 for 循环的次数和取值范围。

三、break 与 continue

在 Python 中,break 和 continue 是用于控制循环流程的关键字。

1.break

break 关键字用于立即终止当前所在的循环结构,即跳出整个循环,不再执行循环中剩余的语句。

for num in range(1, 10):
    if num == 5:
        break
    print(num)

解释:在上述代码中,使用 for 循环从 1 迭代到 9 。当 num 的值等于 5 时,执行 break 语句,此时整个循环立即终止,不再继续执行后续的迭代。所以,最终只会输出 1 到 4 。

2.continue

continue 关键字用于跳过当前循环中的剩余语句,直接开始下一次循环。

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

解释:在这个例子中,当 i 是偶数时,执行 continue 语句,跳过本次循环中后续的 print(i) 语句,直接进行下一次循环。也就是说,只会输出奇数。

四、for与else

在 Python 中,for 循环可以和 else 搭配使用。else 子句中的代码会在 for 循环正常结束后执行(即没有被 break 语句中断)。

numbers = [1, 2, 3, 4, 5]

for num in numbers:
    if num == 6:
        print("找到 6 了!")
        break
else:
    print("没有找到 6")

解释:在上述代码中,遍历 numbers 列表中的每个元素。如果在循环过程中找到了 6,就会执行 break 语句跳出循环,此时不会执行 else 子句中的代码;如果循环正常结束,都没有找到 6,那么就会执行 else 子句中的代码,输出"没有找到 6"。

以下是一个在 for 循环中使用 break 并结合 else 的示例代码:

numbers = [1, 2, 3, 4, 5]

for num in numbers:
    if num == 3:
        print("找到 3 了!")
        break
else:
    print("没有找到 3")

解释:当遍历到数字 3 时,执行 break 语句跳出 for 循环,此时不会执行 else 子句中的代码。如果在整个循环过程中都没有遇到 3 ,导致循环正常结束,那么就会执行 else 子句中的代码。

五、循环嵌套

在 Python 中,for 循环嵌套 for 循环是一种常见的编程结构。

当一个 for 循环出现在另一个 for 循环内部时,就形成了嵌套。外层的 for 循环每执行一次,内层的 for 循环就会完整地执行一轮。

# 打印9*9乘法表
for i in range(1, 10):
    for j in range(1, 10):
        if i >= j:
            print(f"{j}*{i}={i * j}", end=" ")
    print("")

这段代码使用了两层嵌套的 for 循环来打印 9*9 乘法表。
外层的 for 循环 for i in range(1, 10) 负责控制乘法表的行数,i 从 1 递增到 9 。内层的 for 循环 for j in range(1, 10) 负责控制每行乘法运算的个数。


在循环体内部,通过条件判断 if i >= j 来决定是否打印乘法表达式。只有当行号 i 大于或等于列号 j 时,才打印出乘法表达式 {j}*{i}={i * j} ,并且每个表达式之间用空格分隔 end=" " 。当内层的 for 循环结束后,执行 print("") 实现换行,从而开始打印下一行的乘法运算。

知识点总结思维导图:

  • 44
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值