day 3 python 中的循环

本文详细介绍了Python中的for循环和while循环,包括各自的语法结构、执行过程和适用场景。还讨论了for和while的选择,并通过实例讲解了countinue和break的用法。同时提供了多个练习题来加深理解。
摘要由CSDN通过智能技术生成

1、for 循环

  • 语法结构:

    • for 变量 in 序列:

      ​ 循环体

  • 执行过程:

    • 让变量去序列中取值,一个一个的取,取完为止;每取一个值,执行一次循环体。
  • range的用法

用法含义
range (N)产生一个0~N-1的数字序列
range(M,N)产生一个M ~N-1的数字序列,M和N都是整数序列,并且M小于N
range(M,N,step)step控制每次增加的值,默认情况下是1

练习1:产生一个100到1所有的数字对应的序列

for x in range(100, 0, -1):
    print(x)

练习2:计算1+2+3+…+100的和

sum1 = 0
for num in range(1, 101):
    sum1 = num + sum1
print(sum1)

练习3:统计0~100中能够被3整除的偶数的个数

# 方法一
count = 0  # 定义一个变量保存最后的个数
for num in range(101):
    if num % 3 == 0 and num % 2 == 0:
        count += 1   # 满足条件的个数在原来基础上进行加和
print(count)

# 方法二:
count = 0
for num in range(0, 101, 6): # 能被3整除的偶数就是6的倍数
    count += 1
print(count)

练习4:求1000以内能被7整除但是不能被3整除的数的和

方法一:
sum2 = 0
for num in range(1000):
    if num % 7 == 0 and num % 3 != 0:
        sum2 = num + sum2
print(sum2)

方法二:
sum2 = 0
for num in range(0, 1000, 7):
    if num % 3 != 0:
        sum2 = num + sum2
print(sum2)

练习5:统计1000以内十位数加上个位数的和等于5的数的个数

count = 0
for num in range(1000):
    a1 = num % 100 // 10
    b1 = num % 10
    if a1 + b1 == 5:
        count += 1
print(count)

2、while循环

  • 语法结构:

    • while 条件语句:

      ​ 循环体

  • 执行过程:

    • 先判断条件语句是否为True,是就执行循环体,执行完循环体再次判断条件语句是否为True,为True再继续执行,以此类推,直到条件语句的结果为False,整个循环就结束。
  • 重点:while如何控制循环次数

    • 变量 = 0

      while 变量 < 次数:

      ​ 需要重复执行的操作

      ​ 变量 += 1

  • 举例:

num = 0
while num < 5: # 打印+++的循环次数大于等于5次,结束循环
    print('+++')
    num += 1
# 思路:
'''
num = 0 < 5(True) -> print('+++') -> num += 1
num = 1 < 5(True) -> print('+++') -> num += 1
num = 2 < 5(True) -> print('+++') -> num += 1
---
num = 5 == 5(False) -> 结束循环 
'''

3、for 和 while 的选择

  • 什么时候用for循环:
    • 遍历序列(需要将序列中的元素一个一个的取出)
    • 循环次数确定
  • 什么时候用while循环:
    • 死循环
    • 循环次数不确定

练习1:写程序实现不断输入数据,直到输入的内容为0为止

value = 1
while value != '0':
    value = input('请输入一个数:') # 此处输入内容为字符型

4、countinue和break

两者只能在循环体中使用

  • continue - 结束一次循环体
    • 如果在执行循环体的时候遇到了continue,那么当次循环结束,直接进行下次循环

例如1:

for x in range(5):
    print('++')
    continue
    print('--')
    
执行结果是:每循环一次打印++,遇到continue,结束循环当次打印--,再次循环也一样,直到循环5次。

++
++
++
++
++

例如2:

count = 0
for x in range(10):
    if x % 3 == 0: 
        continue  # 如果X是3的倍数,结束当次循环,直到X不是3的倍数,                     则进行计数,直到10个数依次循环完
    count += 1
print(count)
  • break - 结束整个循环
    • 如果执行循环体的时候遇到break,那么整个循环体直接结束

例如:

num = 0
while num < 5:
    print('=======')
    break
    print('+++++++')
    num += 1
print('end')

输出结果为:
=======

5、完整的for循环和while循环

"""
for 变量 in 序列:
    循环体
else:
    代码块
    
    
while 条件语句:
    循环体
else:
    代码块


else不影响原循环的执行; else后面的代码块在循环正常结束的时候会执行,
如果循环是因为遇到break而结束的,else后面的代码块就不会执行。

"""
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值