day03学习 Python循环、第三方模块安装、进度条的简单使用

本文详细介绍了Python中的循环结构,包括for循环和while循环的使用,以及break和continue语句的控制功能。通过实例展示了计算序列之和、阶乘、查找素数以及实现九九乘法表的方法。此外,还提到了使用`tqdm`库实现进度条的技巧,以及如何安装和使用第三方模块。文章最后讨论了嵌套循环和循环控制的灵活性,强调了在不同场景下选择合适循环结构的重要性。

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

循环

批量的执行某些重复的事情。

循环关键字forinwhilebreakcontinueelse

for循环

案例:计算1-100的和

total = 0
for i in range(1, 101):
    total += i
print(total)
  • for循环语法

    for 变量 in 容器:
        代码块
    
    • for循环执行次数根据容器中元素个数确定
    • for循环每次执行,变量都会从容器中按照顺序获取元素
    计算1-100阶乘
    total = 1
    for i in range(1, 101):
        total *= i
    print(total)
    
  • range函数-创建一个等差数列

    range(M,N,step)

    • M代表起始范围(默认为0),N代表结束范围,M、N组成左闭右开区间

    • step步长,可以使用steo跨指定宽度获取元素(step默认为1)

      • range(1, 100, 1) -> 从[1,100)中连续获取每一个整数。

      • range(1, 100, 5) -> 从[1,100)中每间隔4个元素获取一个元素(从[1,100)中每获取一个元素+5)

      • step为正整数时表示正向取元素,step为负整数表示逆向取元素

        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)中连续获取每个整数

    练习:对100以内偶数求和

    total_1 = 0
    for i in range(0, 101, 2):
        total_1 += i
    print(total_1)
    

while循环

  • for循环执行次数确定。

  • while循环适合次数不确定的程序,也可以用来对次数确定的程序编程。

while循环语法:

while 条件:
    代码块

当条件成立时while循环才能够正常执行

total = 0
i = 1
while i <= 100:
    total += i
    i += 1
print(total)

break continue

  • break: 结束其所在的循环执行

    (执行循环体的时候如果遇到了break,那么整个循环直接结束 - 循环体剩下的部分不执行,也不再进入下次循环)

  • continue: 结束其所在循环的本次循环

    (每次在执行循环体的时候如果遇到了continue,那么这次循环结束直接进入下次循环)

for i in range(1, 11):
    if i % 2 == 0:
        continue
    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

二分法可保证100以内的数字在7次之内猜中数字

else

  • for-else语法,for循环非正常结束时else语句不执行。
  • for循环正常结束,触发else语句。

for -else语法:

for 变量 in 容器:
    代码块
else:
    代码块

练习:找出100以内所有的素数。

# 素数: 只有1和本身两个因子的大于1的正整数叫素数。
for i in range(2, 100):
    if i == 2:
        print('2是素数')
    else:
        for j in range(2, i):
            if i % j == 0:
                print(f'{i}不是素数')
                break
        else:
            print(f'{i}是素数')

while-else语法:

while 条件语句:
	循环体
else:
	代码段

else的存在并不会影响原来的循环的执行;

如果循环自然死亡,循环结束后会执行else后面的代码段;

如果循环是因为遇到break而结束的,那么else后面的代码就不会执行

嵌套循环

  • for循环和while循环都可以嵌套。

  • for循环中变量如果没有被使用,可以简写为_

    for _ in range(5):
        for j in range(1, 11):
            print(j)
    # 1-11输出5次
    

练习:打印九九乘法表

# 外层循环代表行
for i in range(1, 10):
    # 内层循环代表列
    for j in range(1, i + 1):
        # 补充:\t: 能够将打印结果的长度补全为4的倍数
        print(f'{i}x{j}={i*j}', end='\t')
        print('{}*{}={:<3}'.format(i, j, i*j), end='')
    print()

补充:\t: 能够将打印结果的长度补全为4的倍数

安装第三方模块

  • 修改Python镜像源:阿里云、华为云、豆瓣、华中科技大学等等镜像源

    pip config set global.index-url https://pypi.douban.com/simple

在这里插入图片描述

  • 安装三方模块

    • pip install模块名

      windows系统:pip install tqdm

      MacOS: pip install tqdm

    • 使用pycharm提供的可视化安装。

      windows --> file -> settings ->project -> python interpreter -> +

      MacOS -> pycharm -> preferences -> project ->python interpreter -> +

进度条的使用

  • 导入第三方模块

    from tqdm import tqdm

  • 有进度条不能有print、有print不能有进度条。

    (同时存在会找不到进度条)

  • tqdm(容器)

for i in tqdm(range(1, 100000000)):
    pass

# 100%|██████████| 99999999/99999999 [00:13<00:00, 7145108.89it/s]

for i in range(1, 5):
    for j in tqdm(range(1, 100)):
        pass
"""
100%|██████████| 99/99 [00:00<?, ?it/s]
100%|██████████| 99/99 [00:00<?, ?it/s]
100%|██████████| 99/99 [00:00<?, ?it/s]
100%|██████████| 99/99 [00:00<?, ?it/s]
"""

for i in tqdm(range(1, 5)):
    for j in range(1, 100):
        pass
    
# 100%|██████████| 4/4 [00:00<?, ?it/s]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值