python实现简单进度条

这是一个命令行动态进度条程序,运行时会在屏幕上打印一条不断刷新的文本进度条,并配有百分比。

程序源码:

python 复制代码
#简单的进度条设计

import time
scale = 10
print("----------程序执行开始----------")
for i in range(scale + 1):
    a , b = '**' * i , '..' * (scale - i)
    c = (i / scale) * 100
    print("%{:^3.0f}[{}->{}]".format(c , a , b))
    time.sleep(0.4)
print("----------程序执行结束----------")

运行结果:

(实际运行时每行间隔 0.4 秒逐条打印出来)

核心思想:

比例映射:用 i 同时控制三个东西------星号数量、点号数量、百分比数值,保证三者始终一致

定宽对齐:a 增加多少,b 就减少多少,进度条总长固定不抖动

格式化对齐:{:^3.0f} 让百分比数字居中占 3 格,避免 0%、50%、100% 长度不同导致的错位

这是 Python 教材(如嵩天《Python语言程序设计》)中的经典示例。实际工程中还可以把 print 换成 print(..., end="\r") 并使用 flush=True,让进度条在同一行原地刷新,效果更接近真实的下载进度条。

相关推荐
郝学胜_神的一滴1 小时前
AI 编程智能体 06:用Anaconda搞定Python多环境,彻底告别版本兼容灾难
人工智能·python
清水白石0081 小时前
Python 对象模型深度解析:从“一切皆对象”到 id、type、isinstance 底层机制与小整数缓存原理
开发语言·python·缓存
斯内普吖1 小时前
(开源)宠物饲养系统实战指南 基于 Java + SSM + Vue + MySQL
java·vue.js·mysql·开源·宠物
for_ever_love__1 小时前
Python 进阶——迭代器、生成器、装饰器与 asyncio
python·装饰器·生成器·大模型开发
知守观1 小时前
Spring Boot 2.1 → 3.5 迁移推演:这个 2018 年的项目会炸在哪
java·spring boot
Rosanci1 小时前
Codex 下载与本地部署实战:从安装到运行全流程指南
开发语言·前端·算法·chatgpt·codex
Flynt1 小时前
800KB 的 JSON 吃掉 8.5 秒 CPU:jackson 这波修复里,最容易被漏掉的洞藏在字符串里
java·安全
5G微创业1 小时前
去水印API如何实现技术变现
python·sdk·短视频
后端LV1 小时前
Caffeine 快到 1450 万 ops/s,为什么我还是不敢说数据一致
java·后端