day3
1. 循环
批量的执行某些重复的事情。
循环关键字:for、in、while、break、continue、else
- 案例:计算1-100的和
total = 0
for i in range(1, 101):
#range为左闭又开区间
total += i
#当total为0时,值为1;i为变量,复合赋值运算结果
print(total)
#当print顶格时,程序共执行一个结果;若缩进4格,则置于for循环中,会同for循环一起执行100次,显示100次过程执行结果
- 1.1 for循环语法
for( i为变量) in(range容器)
代码块
for循环执行次数根据容器中元素个数确定(1-100执行100次)
for循环每次执行,变量i都会从容器range中按照顺序获取元素,例如1、2、3…100。
2. range
range(M, N, step)
M代表起始范围(不写默认为0)
N代表结束范围(左闭右开区间,需在预期数值基础上+1),M、N组成左闭右开区间;
step叫做步长,可以使用step跨指定宽度获取元素(step=1时可以不写)。当step为正整数时表示正向取元素,step为负整数表示逆向取元素
- range(1, 100, 1) -> 从[1,100)中连续获取每一个整数。
- range(1, 100, 5) -> 从[1, 100)中每间隔4个元素获取一个元素(从[1, 100)中每获取一个元素+5)
for i in range(1, 100, 1):
print(i)
for i in range(1, 100, 5):
print(i)
- range(101) -> 从[0,101)中连续获取每一个整数
for i in range(101):
print(i)
- range(100, 1, -1) -> 从[100,1)中连续获取每个整数(逆向)
for i in range(100, 1, -1):
print(i)
- 练习题:对100以内偶数求和
total = 0
for i in range(0, 101, 2):
total += i
print(total)
3. while循环**
for循环执行次数确定。
while循环适合次数不确定的程序,也可以用来对次数确定的程序编程。
- while循环语法:
- while 条件:
代码块
当条件成立时while循环才能够正常执行。
total = 0
i = 1
while i <= 100:#条件成立,while开始执行
total += i
i += 1 #使变量复合运算起来
print(total)
4. break、continue(关键字)
break:结束其所在的循环执行,依据缩进判断结束哪个循环
continue:结束其所在循环的本次循环
for i in range(1, 11):
if i % 2 == 0:
continue #(符合条件直接结束循环)
print(i)
else:
print(i)
- 练习:猜数字游戏,如果猜大了,提示再小一点;如果猜小了,提示再大一点;
如果猜对了,直接结束程序
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
5. 嵌套循环
for循环和while循环都可以嵌套。
for循环中变量如果没有被使用,可以简写为"_" (下划线)
for _ in range(5):#循环打印5次
for j in range(1, 11):#1-10的数字依次
print(j)
- 练习:打印九九乘法表。
- 外层循环代表行
for i in range(1, 10):
# 内层循环代表列
for j in range(1, i + 1):
# \t:能够将打印结果的长度补全为4的倍数
# print(f'{i}*{j}={i * j}', end='\t')
print('{}*{}={:<2}'.format(i, j, i * j), end=' ')
print()
for else循环
for else语法
for 变量 in 容器
代码块
else
代码块
- 素数:指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数
- 练习:找出100以内是所有素数
for i in range(2, 101):
if i == 2:
print('2是素数')
else:
for j in range(2, i):#range是左闭右开区间,此时i=3,j执行一次#
if i % j == 0:
print(f'{i}不是素数')
break#if条件不成立,for循环结束#
else:
print(f'{i}是素数')
for else语法,for循环非正常结束时else语句不执行
for 循环正常结束,出发else语句
7. 如何安装第三方模块
-
- 修改python镜像源:阿里云、华为云、豆瓣、华中科技大学等镜像源
windows快捷键+R,输入cmd,再输入以下路径(python国外服务器:pip config set global.index-url,运行速度慢,故使用镜像源实时同步国外Python服务器):
pip config set global.index-url https://pypi.douban.com/simple
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C2V8ZzV7-1655999153824)(C:\Users\lrq\Desktop\python notes\修改镜像源-提示成功界面.png)]
-
- 安装第三方模块
方法1:
pycharm中点击Terminal,(windows系统输入):pip install tqdm
方法2:使用pycharm提供的可视化安装
- widnows→ file → settings → project→ python interpreter→ +
- mac→ charm→ preferences→ project→ python interpreter→ +
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WkUSKZIF-1655999153826)(C:\Users\lrq\Desktop\python notes\修改pycharm镜像源-提示成功界面.png)]
8.进度条的使用
有进度条不能有print、有print不能有进度条
tqdm(容器)
from tqdm import tqdm
for i in tqdm(range(1,100)):
pass
图片转存中…(img-WkUSKZIF-1655999153826)]
8.进度条的使用
有进度条不能有print、有print不能有进度条
tqdm(容器)
from tqdm import tqdm
for i in tqdm(range(1,100)):
pass