赞
踩
循环的类型:for-in循环,while循环,嵌套循环,for-else循环(不常用),while-else循环(鲜少使用)
一、for-in循环
案例:计算1-100的和
'''
for 变量(不一定是一个变量,大部分场景下是一个) in 容器:
代码块
执行顺序:
for-in循环执行次数取决于容器中元素个数,每循环一次,
按照容器元素的顺序从头到尾依次获取一个元素给变量
然后代码块执行,代码块执行完进入下一次循环,每次循环执行完再回到for-in,
判断是否还有介意获取的元素
'''
total = 0
for i in range(1, 100):
# print(i)
total += i
print(total)
二、range方法
- for i in range(1,10,2):
- #规则4
- for i in range(1,10):
- #规则1、3
- for i in range(100,3):
- #如果100为start,3为end,不符合规则6
- #如果100为start,3为end,不符合规则5
- for i in range(5):
- #规则2
- print(i)
输出-2,-4,-6,-8
- for i in range(-2,-9,-2):
- print(i)
练习:找到1-1000所有的偶数求和
- a = 0
- for i in range(1001):
- if i % 2 == 0:
- a += i
- print(a)
- b = 0
- c = 0
- while b <= 1000:
- c += b
- b += 2
- print(c)
-
- print(sum([i * 2 for i in range(501)]))
-
- print(sum([i for i in range(0, 1001, 2)]))
- e = [i % 2 == 0 for i in range(1001)]
- print(sum([i for i, j in enumerate(e) if j]))
for-in循环适合循环确定的循环
while循环
while循环一般用来不确定循环次数的问题中
from random import randint
random:随机模块
randint:从指定范围(闭区间)中随机返回一个整数
- number = randint(1,100)
- print(number)
- while i:
- x=int(input('输入:'))
- if x>number:
- print('猜大了')
- elif x<number:
- print('猜小了')
- else:
- print('猜中了')
- i=0
外层循环控制行
- for row in range(1,10):
- # 内层循环控制每行公式列数
- for col in range(1,row+1):
- result=f'{row}*{col}={row*col:>2}'
- print(result,end=' ')
- # 无论任何时候,print中end永久生效
- print()
continue:continue一旦被触发,立即结束掉所在循环的本次循环进入下一次循环
break和continue只能用于循环内
如果for循环中的变量没有用到,可以用到下划线代替
- ptrhon
- for _ in range(3):
- for i in range(1,6):
- if i==4:
- print('=====')
- # break
- continue
- print('****')
- else:
- print(i)'''
- # 一次循环结束的标志位该循环内部代码块测地执行完
-
- # 练习:使用while循环计算1-100的阶乘
- i = 100
- k = 1
- while i > 0:
- k *= i
- i -= 1
- print(k)
-
- a = 0
- c = []
- while a < 100:
- a += 1
- b = 1
- d = a
- while d > 0:
- b *= d
- d -= 1
- c.append(b)
- print(c)
-
- '''
- 语法:
- while 条件:
- 代码块
- 执行流程:
- while每次执行,先判断条件是否为真,条件为真,代码块执行;代码块执行完,再回到while继续
- 判断条件是否仍然为真,如果为真,继续,反之结束循环
- '''
- for num in range(1, 100):
- if num == 2:
- print('2是素数')
- elif num == 1:
- continue
- else:
- # 排除1和本身,检查其他数字是否有因子存在
- for i in range(2, num):
- if num % i == 0:
- break
- else:
- print(f'{num}是素数')
for-else:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。