1. 首页
  2. Python

python骚操作:万能python还能用来做高大上的进度条

“u003Cdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F20d02e8d7cb848509c192f20f4d2b42d” img_width=”550″ img_height=”275″ alt=”python骚操作:万能python还能用来做高大上的进度条” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E对于开发或者运维来说,使用Python去完成一些跑批任务,或者做一些监控事件是非常正常的情况。那么如何有效的监控任务的进度,除了在任务中加上log外,还能不能有另一种方式来了解任务进展到哪一步了呢?u003Cu002Fpu003Eu003Cpu003E这就是今天我们来了解的内容,进度条u003Cu002Fpu003Eu003Cpu003Eu003Cstrongu003E1. 标准输出u003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cpu003E首先说一下在操作系统中,都有哪些控制符:u003Cu002Fpu003Eu003Cpu003Er: 将光标移动到当前行的首位而不换行;u003Cu002Fpu003Eu003Cpu003En:将光标移动到下一行,并不移动到首位;u003Cu002Fpu003Eu003Cpu003Ern:将光标移动到下一行首位。u003Cu002Fpu003Eu003Cpu003E那让我们来看下如何通过python来将标准输出中添加进度条吧u003Cu002Fpu003Eu003Cpreu003Eimport sysu003Cbru003Eimport timeu003Cbru003Edef progress_bar(total):u003Cbru003E “””u003Cbru003E 进度条效果u003Cbru003E “””u003Cbru003E # 获取标准输出u003Cbru003E _output = sys.stdoutu003Cbru003E # 通过参数决定你的进度条总量是多少u003Cbru003E for count in range(0, total + 1):u003Cbru003E # 这里的second只是作为工作量的一种代替u003Cbru003E # 这里应该是有你的主程序,main()u003Cbru003E _second = 0.1u003Cbru003E # 模拟业务的消耗时间u003Cbru003E time.sleep(_second)u003Cbru003E # 输出进度条u003Cbru003E _output.write(f’\rcomplete percent:{count:.0f}’)u003Cbru003E # 将标准输出一次性刷新u003Cbru003E _output.flush()u003Cbru003Eprogress_bar(100)u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E来看下实际效果,这里我录了一段gifu003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002Fe98ea6bc77d548f39f71efc7bfd4030e” img_width=”1425″ img_height=”521″ alt=”python骚操作:万能python还能用来做高大上的进度条” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003Eu003Cstrongu003E2. tqdm模块u003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cpu003Etqdm是一个快速、扩展性强的进度条工具库,它提供了非常多的接口,有兴趣的小伙伴可以了解一下。githup地址是: u003Cstrongu003Ehttps:u002Fu002Fgithub.comu002Ftqdmu002Ftqdmu003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cpu003E我们来看下,如何使用tqdm模块来实现进度条u003Cu002Fpu003Eu003Cpu003Ea. 首先是安装,非常简单u003Cu002Fpu003Eu003Cpreu003Epip install tqdmu003Cbru003Eu003Cu002Fpreu003Eu003Cpu003Eb. 接下来就是操作啦u003Cu002Fpu003Eu003Cpreu003Efrom time import sleepu003Cbru003Efrom tqdm import tqdmu003Cbru003E# 这里同样的,tqdm就是这个进度条最常用的一个方法u003Cbru003E# 里面存一个可迭代对象u003Cbru003Efor i in tqdm(range(1, 500)):u003Cbru003E # 模拟你的任务u003Cbru003E sleep(0.01)u003Cbru003Eu003Cu002Fpreu003Eu003Cpu003E是不是看到这里发现,tqdm非常的简单呢?u003Cu002Fpu003Eu003Cpu003E这只是一个例子啦,他也可以非常的复杂,同时你也支持多线程、多进程,还有pandas哦~来一个多进程的感受下吧~u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F36a95dc7fe914bd68e8b8344affdcdb7″ img_width=”640″ img_height=”234″ alt=”python骚操作:万能python还能用来做高大上的进度条” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003Eu003Cstrongu003E最后如果你依然在编程的世界里迷茫,不知道自己的未来规划,对python感兴趣u003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cpu003Eu003Cstrongu003E记得转发关注然后私信小编【学习】就能和小编一起学Python啦,还有学习大礼包赠送,希望能帮助你更了解python,学习pythonu003Cu002Fstrongu003Eu003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fpgc-imageu002F6d112c04eb1f47c0a37bf1b19fce9dff” img_width=”561″ img_height=”485″ alt=”python骚操作:万能python还能用来做高大上的进度条” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cu002Fdivu003E”

原文始发于:python骚操作:万能python还能用来做高大上的进度条

主题测试文章,只做测试使用。发布者:醒百年,转转请注明出处:http://www.cxybcw.com/13486.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code