批量执行某些重复的事情。
循环关键字:for、in、while、break、continue、else
for循环执行次数确定
一、例1:计算1-100的和for循环语法:
for 变量 in 容器:
代码段
for循环执行次数根据容器中元素个数确定,
for循环每次执行,变量都会从容器中按照顺序获取元素。
total = 0
for i in range(1,101):
total += i
print(total)
#5050
二、range(M,N,step)
M–起始范围(默认为0) N–结束范围(不可省),M,N组成左闭右开区间,step–步长,可以跨指定宽度获取元素(默认步长为1)
range(1,100,1)—从[1,100)中连续获取每一个元素。
range(1,100,5)—从[1,100)中每间隔四个元素获取一个元素,在前一个元素+5。
for i in range(1,100,5):
print(i,end='t')
#1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96
range(101) --从[0,101)中连续获取每一个整数。
for i in range(101):
print(i,end='t')
#0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
从[50,0)中负向去间隔为4的元素
for i in range (50,0,-5):
print(i)
#50 45 40 35 30 25 20 15 10 5
练习:对100以内的偶数求和
total_1 = 0
for i in range(0,101,2):
total_1 += i
print(total_1)
#2550
while循环
while循环适合次数不确定的程序
while循环语法:
while 条件:
代码块
当条件成立时,while循环才能正常执行
total = 0
i = 1
while i < 101:
total += i
i += 1
print(total)
#5050
二、break、continue
break:结束其所在的循环执行。
continue:结束其所在循环的本次循环。
for i in range(1,11):
if i % 2 == 0:
continue
else:
print(i,end='t')
#1 3 5 7 9
练习:猜数字游戏,如果猜到了,提示再小一点;如果猜小了,提示再大一点;如果猜对了,直接结束程序。
from random import randint
num = randint(1,100)
while True:
myNum = int(input('请输入一个整数(0-100):'))
if myNum > num:
print('再小一点')
elif myNum < num:
print('再大一点')
else:
print('猜对了!')
break
#请输入一个整数(0-100):50
#再大一点
#请输入一个整数(0-100):75
#再小一点
#请输入一个整数(0-100):62
#再小一点
#请输入一个整数(0-100):58
#再小一点
#请输入一个整数(0-100):55
#再大一点
#请输入一个整数(0-100):56
#再大一点
#请输入一个整数(0-100):57
#猜对了!
嵌套循环
for循环和while循环都可以嵌套。
for循环变量中如果没有被使用,可以简写为_。
例:
for _ in range(5):
for j in range(1,11):
print(j,end='t')
print()
#1 2 3 4 5 6 7 8 9 10
#1 2 3 4 5 6 7 8 9 10
#1 2 3 4 5 6 7 8 9 10
#1 2 3 4 5 6 7 8 9 10
#1 2 3 4 5 6 7 8 9 10
练习:打印九九乘法表。
#外层循环代表行
for i in range(1,10):
#内层循环代表列
for j in range (1,i + 1):
#t:能够将打印结果的长度补全为4的倍数
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
#1*4=4 2*4=8 3*4=12 4*4=16
#1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
#1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
#1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
#1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
#1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
for-else循环
for-else语法:
for 变量 in 容器:
代码块
else:
代码块
练习1:找出100以内所以的素数
质数(素数):只有1和本身两个因子的大于1的正整数。
for i in range(2,101):
if i == 2:
print('2是素数')
else:
for j in range(2,i):
if i % j == 0:
print(f'{i}不是素数')
break
else:
print(f'{i}是素数')
#2是素数
#3是素数
#4不是素数
#...
for-else语法,for循环非正常结束时else语句不执行。
for循环正常结束时,触发else语句.
-
修改python镜像源:阿里云、华为云、豆瓣、华中科技大学…
pip config set global.index-url https://pypi.douban.com/simple
-
安装三方模块:
a.方法一:pip install 模块名 -->pip install requests
b.方法二:使用pycharm提供的可视化安装。
Windows:file–> settings–> project–>python interpreter–> +
mac: pycharm -> preferences -> project ->python interpreter -> +
有进度条不能有print,有print不能有进度条
tqdm(容器)
from tqdm import tqdm
for i in tqdm(range(1,5)):
for j in tqdm(range(1,1000000)):
pass
# 64%|██████▍ | 638694/999999 [00:00<00:00, 3218271.02it/s]
#...



