05:python 循环结构(笔记)

本文详细介绍了Python中的循环结构,包括for-in循环和while循环的使用。通过实例讲解了range函数的用法,如生成指定范围的整数、奇数和偶数。此外,还探讨了break和continue在循环中的应用,以及如何实现嵌套循环,例如展示了乘法口诀的生成。最后,给出了两个实际应用的例子,分别是判断素数和计算最大公约数与最小公倍数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Python中构造循环结构有两种做法,一种是for-in循环,另一种是while循环

(循环结构,就是程序中控制某条或某些指令重复执行的结构)

for - in 循环

明确的知道循环执行的次数,推荐使用for-in循环

例如:

total = 0
for x in range(1, 101):
    total += x
print(total)

关于range函数使用方法:

  • range ( 101 ) : 产生0到100范围的整数
  • range ( 1, 101 ) : 产生1到100范围的整数,相当于前面是闭区间后面是开区间
  • range ( 1, 101, 2 ) : 产生1到100的奇数,其中2是步长,既每次递增的值
  • range (100, 0, -2) : 产生100到1的偶数,其中-2是步长,即每次递减的值

求 :1 ~100 之间的偶数求和

total = 0
for x in range(2, 100, 2):
    total += x
print(total)

运算结果:

2450

while 循环

要构造不知道具体循环次数的循环结构,推荐使用while循环。

import random
answer = random.randint(1, 100)
counter = 0
while True:
    counter += 1
    number = int(input('请输入:'))
    if number < answer:
        print('大一点')
    elif number > answer:
        print('小一点')
    else:
        print('恭喜你猜对了!')
        break
print(f'你总共才了{counter}次')

break和continue

break 关键字,它的作用是提前结束循环。需要注意的是,break只能终止它所在的那个循环。

除了break之外,还有另一个关键字是continue,它可以用来放弃本次循环后续的代码直接让它循环进行下一轮。

嵌套的循环结构

和分支结构一样,循环结构也是可以嵌套的,也就是说在循环中还可以构造循环结构。

例如:乘法口诀

for i in range(1, 10):
    for j in range(1, i+1):
        print(f'{i}*{j}={i*j}',end='\t')
    print()

运行结果:

1*1=1    
2*1=2    2*2=4    
3*1=3    3*2=6    3*3=9    
4*1=4    4*2=8    4*3=12    4*4=16    
5*1=5    5*2=10    5*3=15    5*4=20    5*5=25    
6*1=6    6*2=12    6*3=18    6*4=24    6*5=30    6*6=36    
7*1=7    7*2=14    7*3=21    7*4=28    7*5=35    7*6=42    7*7=49    
8*1=8    8*2=16    8*3=24    8*4=32    8*5=40    8*6=48    8*7=56    8*8=64    
9*1=9    9*2=18    9*3=27    9*4=36    9*5=45    9*6=54    9*7=63    9*8=72    9*9=81    
 


循环例子:

例子:输入一个正整数判断它是不是素数。

num = int(input('请输入一个正整数:'))
end = int(num ** 0.5)
is_prime = True
for x in range(2, end + 1):
    if num % x == 0:
        is_prime = False
        break
if is_prime and num != 1:
    print(f'{num}是素数')
else:
    print(f'{num}不是素数')

例子2:输入两个正整数,计算它们的最大公约数和最小公倍数

x = int(input('x = '))
y = int(input('y = '))
for factor in range(x, 0, -1):
    if x % factor == 0 and y % factor == 0:
        print(f'{x}和{y}的最大公约数是{factor}')
        print(f'{x}和{y}的最小公倍数是{x * y // factor}')
        break
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值