Python学习之路-循环语句学习详解

Python 的循环语句是编程中最基础、最常用的控制结构之一,主要用于重复执行某段代码。Python 中主要有两种循环:

  • for 循环 —— 适合已知次数或遍历序列的场景
  • while 循环 —— 适合根据条件决定是否继续的场景

下面从基础到进阶,带你系统掌握 Python 循环语句。

1. for 循环(最常用)

语法

for 临时变量 in 可迭代对象:
    循环体(要重复执行的代码)

常见可迭代对象:列表、元组、字符串、range()、集合、字典、文件等。

最经典用法示例

# 1. 遍历列表
fruits = ["苹果", "香蕉", "橙子", "葡萄"]
for fruit in fruits:
    print(f"我喜欢吃 {fruit}")

# 2. 用 range() 遍历数字(最常用)
for i in range(5):          # 0,1,2,3,4
    print(i)

for i in range(1, 10, 2):   # 1,3,5,7,9
    print(i, end=" ")

# 3. 遍历字符串
for char in "Python":
    print(char, end="-")    # P-y-t-h-o-n-

带索引的遍历(非常实用)

names = ["张三", "李四", "王五"]

# 方法1:推荐
for idx, name in enumerate(names):
    print(f"第 {idx+1} 个人:{name}")

# 方法2:了解即可
for i in range(len(names)):
    print(f"第 {i+1} 个人:{names[i]}")

2. while 循环

语法

while 条件表达式:
    循环体

特点:只要条件为 True,就一直循环。容易写成死循环,要特别注意退出条件!

经典示例

# 累加 1~100
sum = 0
i = 1
while i <= 100:
    sum += i
    i += 1
print("1到100的和是:", sum)   # 5050

# 猜数字小游戏(简单版)
import random
answer = random.randint(1, 100)
count = 0

while True:
    guess = int(input("猜一个1-100的数字:"))
    count += 1
    if guess > answer:
        print("太大了!")
    elif guess < answer:
        print("太小了!")
    else:
        print(f"恭喜你!猜对了!用了 {count} 次")
        break

3. 循环控制语句(超级重要!)

语句作用适用范围是否跳出整个循环
break立即结束整个循环for / while
continue跳过本次循环剩余部分,进入下一次循环for / while
pass什么都不做(占位符)任何地方

示例对比

print("演示 break")
for i in range(1, 10):
    if i == 5:
        break
    print(i, end=" ")      # 输出:1 2 3 4

print("\n演示 continue")
for i in range(1, 10):
    if i == 5:
        continue
    print(i, end=" ")      # 输出:1 2 3 4 6 7 8 9

print("\n演示 pass")
for i in range(5):
    if i == 3:
        pass               # 什么都不做,但继续循环
    print(i, end=" ")      # 输出:0 1 2 3 4

4. 循环中的 else 子句(Python 特色)

for / while 都可以带 else,但含义特殊:

  • else 只有在循环“正常结束”(没有被 break 中断)时才会执行
# 查找素数示例(经典用法)
n = 17
for i in range(2, n):
    if n % i == 0:
        print(f"{n} 不是素数")
        break
else:
    # 没有被 break 中断,才执行这里
    print(f"{n} 是素数!")

# while 也一样
count = 0
while count < 3:
    print("hello")
    count += 1
else:
    print("循环正常结束啦~")

5. 嵌套循环(常见面试题)

# 打印 9×9 乘法表
for i in range(1, 10):
    for j in range(1, i+1):
        print(f"{j}×{i}={i*j}", end="\t")
    print()   # 换行

输出示例

1×1=1    
1×2=2    2×2=4   
1×3=3    2×3=6   3×3=9   
...

6. 快速对比表(建议背熟)

特性for 循环while 循环
使用场景遍历序列、已知循环次数条件控制、不确定循环次数
写法简洁度更高稍复杂
死循环风险较低(range 通常安全)很高(忘记 i+=1 就死循环)
常用控制语句break / continue / elsebreak / continue / else
典型用法遍历列表、range、字典.items()游戏循环、输入验证、直到满足条件

7. 练习题(建议全部手写一遍)

  1. 用 for 循环打印 1~100 内所有偶数
  2. 用 while 求 1~100 的和与平均值
  3. 打印 1~100 内所有 3 的倍数或 5 的倍数(用 continue 优化)
  4. 用嵌套循环打印直角三角形(5 行)
  5. 实现一个猜数字游戏(1~100),记录猜测次数,猜对后显示“用了 X 次”
  6. 用 for + else 判断一个数是否为质数

循环是 Python 编程的基石,熟练掌握后才能写出高效、可读性强的代码。

有哪部分觉得还不够清楚?或者想看某个具体练习的参考答案?直接告诉我~

文章已创建 4391

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部