二级域名解析网站,入驻天猫店需要什么条件,聊天软件怎么制作,做网站推广的话术前言
偶然间刷到一个视频#xff0c;说到#xff1a;当程序正在运算时#xff0c;会有一个较长时间的空白期#xff0c;谁也不知道程序运行的进度如何#xff0c;不如给他加个进度条。
于是我今个就搜寻一下#xff0c;Python版的进度条都可以怎么写#xff01;
送书…前言
偶然间刷到一个视频说到当程序正在运算时会有一个较长时间的空白期谁也不知道程序运行的进度如何不如给他加个进度条。
于是我今个就搜寻一下Python版的进度条都可以怎么写
送书活动【码银送书啦】多本机械工业出版社好书
正文
1、数字进度条
进度条的格式是{当前循环次数} / {总循环次数}。其中循环次数从1开始到500,000结束。
通过使用end\r参数print语句的输出不会换行而是每次循环都会覆盖上一次的输出。这样就实现了实时更新进度条的效果。
for i in range(500000):print(f{i1} / {500000},end\r) 2、使用百分号表示进度
for i in range(500):for j in range(5000):print(f{((i1)*100 // 500)}%,end\r) 3、 使用字符完成简易进度条
该代码将打印出一行字符并且字符的总长度为50个字符。 其中字符的内容为的重复重复的次数为50次。 外面的| |是用来给字符串添加边框的以增加可读性。 for i in range(500):for j in range(500):print(进度条f|{*((i1)*50 // 500):50}|,end\r)print(\n程序完成) 3和4是可以结合起来的
for i in range(500):for j in range(500):print(进度条f|{*((i1)*50 // 500):50}|,f{((i1)*100 // 500)}%,end\r)print(\n程序完成)
输出结果
进度条|| 100% 4、使用tqdm库完成进度条
官网tqdm · PyPI 安装这个库pip install tqdm。
示例代码
from tqdm import tqdm
import timefor i in tqdm(range(500)):time.sleep(0.1)5、使用alive-progress库完成进度条
官网链接alive-progress · PyPI
安装库pip install alive-progress
示例代码
from alive_progress import alive_bar
import timewith alive_bar(100, force_ttyTrue) as bar:for i in range(100):time.sleep(0.1)bar()效果视频 进度条1 6、使用rich库完成进度条
安装库 pip install rich
import time
from rich.progress import trackfor i in track(range(100),description进度):time.sleep(0.1) 这个截图没有在Pycharm编辑器里截图的原因是
显示不全哈哈。
7、让文心一言给我画一个
import time
import sys def print_progress_bar(iteration, total, prefix, suffix, decimals1, length100, fill█, print_end\r): 调用该函数时传入 iteration - 当前的进度Int total - 总进度Int prefix - 前缀字符串Str suffix - 后缀字符串Str decimals - 正数的小数位数Int length - 进度条长度Int fill - 进度条填充字符Str print_end - 结束字符Str默认是\r表示进度条更新在同一行 percent ({0:. str(decimals) f}).format(100 * (iteration / float(total))) filled_length int(length * iteration // total) bar fill * filled_length - * (length - filled_length) print(f\r{prefix} |{bar}| {percent}% {suffix}, endprint_end) # 当完成进度时打印一个换行符 if iteration total: print() # 使用示例
for i in range(1, 101): print_progress_bar(i, 100, prefix进度:, suffix完成, length50) time.sleep(0.01) # 休眠0.01秒模拟进度更新
备注信息
Rich 是一个 Python 库主要用于在终端中提供富文本和精美格式。它通过 API 允许用户轻松地为终端输出添加颜色和样式支持绘制漂亮的表格、进度条、markdown 格式输出、语法高亮、源代码回溯等多种功能。Rich 库支持在 Linux、OSX 和 Windows 上运行其中在新的 Windows 终端上可以支持真彩色和表情符号而经典终端的色彩限制为8种颜色。此外Rich 还可以与 Jupyter 笔记本一起使用无需其他配置。
tqdm源自阿拉伯语塔卡杜姆تقدّم意思是“进步”在西班牙语中是“我非常爱你”的缩写特奎罗·德马西亚多)。立即让你的循环显示一个智能的进度条。
alive-progress的一些亮点
一个令人着迷的实时微调器清楚地显示您的冗长过程没有崩溃您的 SSH 连接没有冻结视觉反馈会对您的处理速度做出反应。一个高效的多线程栏以实际处理速度的一小部分进行自我更新以保持较低的 CPU 使用率并避免终端垃圾邮件每秒 1,000,000 次迭代相当于每秒大约 60 次更新您也可以根据自己的喜好进行校准。ETA预计到达时间功能具有智能指数平滑算法可显示完成时间使您能够更有效地计划时间并管理工作负载。自动打印和记录挂钩提供无缝集成和轻松跟踪甚至在它们发生时用当前的条形位置来丰富它们。当处理完成时它会打印出一个不错的收据包括经过的时间和观察到的吞吐量。它检测下溢和溢出使您能够跟踪命中、未命中或任何所需的计数而不一定是实际迭代。你可以暂停它没错你先在这里听到了任何地方都没有其他进度条具有此功能您可以在任何处理过程中返回 Python 提示符调整一些项目然后回到该正在运行的进程就好像它从未停止过一样所有小部件都保持原样经过的时间很好地忽略了暂停的时间alive_bar它是高度可定制的有各种微调器和酒吧样式以及几个现成的工厂可以轻松生成你的您甚至可以使用超级强大且酷炫的工具来帮助您设计自己的动画您可以在屏幕上看到所有生成的帧和循环具有多个详细级别甚至包括生动的再现无限的创造力触手可及