3.2 Python3 循环语句

在程序设计中,算法的某些操作步骤在一定的条件下会被重复执行,这就是循环结构。

目录

1. while 循环

基本语法

无限循环与中断

while 循环使用 else 语句

2. for 语句

基本语法

遍历字符串

for...else

3. range() 函数

基本用法

反向range

4. 循环控制语句

4.1 break语句

4.2 continue语句

4.3 pass语句

5. 实验例程

例程1: 计算1-100的和

例程2: 乘法表

例程3: 猜数字游戏

例程4: 素数判断

例程5: 过滤列表中的偶数


1. while 循环

while 循环在条件为真时重复执行代码块

基本语法

while 条件表达式:
    # 循环体代码
count = 0
while count < 5:
    print(f"当前计数: {count}")
    count += 1

无限循环与中断

while True:
    user_input = input("输入'quit'退出: ")
    if user_input == 'quit':
        break
    print(f"你输入了: {user_input}")

while 循环使用 else 语句

如果 while 后面的条件语句为 false 时,则执行 else 的语句块。

语法格式如下:

while <expr>:
    <statement(s)>
else:
    <additional_statement(s)>

expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行additional_statement(s)。

循环输出数字,并判断大小:

count = 0
while count < 5:
   print (count, " 小于 5")
   count = count + 1
else:
   print (count, " 大于或等于 5")


2. for 语句

for 循环用于遍历序列(如列表、元组、字符串等)或其他可迭代对象

基本语法

for 变量 in 可迭代对象:
    # 循环体代码
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
    print(fruit)

遍历字符串

for char in "Python":
    print(char)

for...else

在 Python 中,for...else 语句用于在循环结束后执行一段代码。

语法格式如下:

for item in iterable:
    # 循环主体
else:
    # 循环结束后执行的代码

当循环执行完毕(即遍历完 iterable 中的所有元素)后,会执行 else 子句中的代码,如果在循环过程中遇到了 break 语句,则会中断循环,此时不会执行 else 子句。

for x in range(6):
  print(x)
else:
  print("Finally finished!")


3. range() 函数

range() 生成一个数字序列,常用于for循环

基本用法

# 生成0-4的数字
for i in range(5):
    print(i)

# 指定起始和结束(不包含结束值)
for i in range(2, 5):
    print(i)

# 指定步长
for i in range(0, 10, 2):
    print(i)  # 0, 2, 4, 6, 8

反向range

for i in range(5, 0, -1):
    print(i)  # 5, 4, 3, 2, 1

4. 循环控制语句

4.1 break语句

立即退出当前循环

for num in range(10):
    if num == 5:
        break
    print(num)  # 只打印0-4

4.2 continue语句

跳过当前迭代,继续下一次循环

for num in range(5):
    if num == 2:
        continue
    print(num)  # 打印0,1,3,4

4.3 pass语句

空操作,占位符

for num in range(5):
    if num == 2:
        pass  # 什么都不做
    print(num)  # 打印0-4

5. 实验例程

例程1: 计算1-100的和

total = 0
for i in range(1, 101):
    total += i
print(f"1到100的和是: {total}")

例程2: 乘法表

for i in range(1, 10):
    for j in range(1, i+1):
        print(f"{j}x{i}={i*j}", end="\t")
    print()  # 换行

例程3: 猜数字游戏

import random

target = random.randint(1, 100)
while True:
    guess = int(input("猜一个1-100的数字: "))
    if guess == target:
        print("恭喜你猜对了!")
        break
    elif guess < target:
        print("猜小了")
    else:
        print("猜大了")

例程4: 素数判断

num = int(input("输入一个整数: "))
is_prime = True

if num > 1:
    for i in range(2, int(num**0.5)+1):
        if num % i == 0:
            is_prime = False
            break

print(f"{num}是素数" if is_prime and num > 1 else f"{num}不是素数")

例程5: 过滤列表中的偶数

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = []

for num in numbers:
    if num % 2 == 0:
        even_numbers.append(num)
    else:
        continue  # 可省略

print(f"偶数列表: {even_numbers}")

这些循环结构是Python编程的核心部分,while循环适合不确定次数的循环,for循环适合遍历已知序列,range()函数则常用于生成数字序列。掌握循环控制语句可以让你更灵活地控制程序流程。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值