python下载文件带进度条_如何使用python实现文本进度条?

b90e7bec54e736d169fdca71a5b3c5c4d76269c2.png?token=1b0ecc811eab2f4839cf925d8ac4cd9b

大多数人都是喜欢有掌控感的,不管是做事情还是学东西,都希望了解的多一点。如果没有掌控感,你就容易慌,焦虑急躁。其实这是很正常的一种心理,利用好可以变成一种正向驱动力。

都有下载过文件或者软件的体会,小的文件比如图片很快就能下载好;大的文件下载过程中如果不给你任何提示,你绝对会有很多疑惑,这个文件下载了多少了,什么时候可以下好,下载的快还是慢你都不清楚,你唯一能做的就是干等,可能你等了大半天,结果告诉你网络连接失败,请重新下载等。

进度条的出现帮助我们解决了上面的问题,最基本的进度条的显示出我们当前任务已经完成的进度,优化一下还可以显示当前文件的大小,下载的速度如何,下载完成还需要多长时间等。

8c1001e93901213feb8519c96a04bcd72e2e955e.png?token=a8d09457428a0c6a341a49d32b8be6e3

第一种:纯数字显示完成进度

这里为了减低难度,没有去真实下载文件,只是模拟一下效果,实际应用只要把对应部分替换一下就可以了。

f703738da9773912407afd07c6fa0c1e377ae266.png?token=c627b92a8f299eb10f869e80e2b181f3

理解:

这里最主要的就是\r的理解,通常print语句是会换行的,加上end=""就可以实现不换行了,但是会一直拼接在后面。

bd3eb13533fa828ba5c44d9ac3fccb32950a5ac9.png?token=cb2204bb6f6a9144c81790ad21c24939

为了解决这个问题,就需要理解\r这个内容了。

\n是换行,这个很容易理解,就是另起一行开始。\r是回车,通常我们按下enter键也说回车键,实际中enter键的作用是换行加回车;回车是复位,回到原来的起点位置的意思,每次回到原来的位置输出数字,这样就实现了单行刷新的效果 了。time.sleep()是起延时效果,没有就会一下到100%

ff2d9f5265d192ea4e3f34b96374e7fc.gif

第二种:图形化进度条

9922720e0cf3d7caaf9eace6cffc340f6a63a924.png?token=9496758368b276f8e435272bcae83e1f

18b4719ca4b48e38eac31e9f8e2794dc.gif

这里是故意设置成100的,便于演示进度的效果,进度条的外观效果,主要通过a,b,c和输出的字符串效果来控制,可以根据自己的喜好自己设置。

这里的特殊字符可以通过charmap去查找。

bba1cd11728b471005598af9fc2d49fbfd0323fe.png?token=3e7d4c1d1c915bfbc2281e4061994d7f

bd315c6034a85edfccfe5f1277b78325dc5475fe.png?token=fdf1fd8c4ed2243ec149156be80f573f

8ad4b31c8701a18bbf4531aca2cc8d0e2a38fe94.png?token=bc6246f4300274bf7f2e4590e81f9779

加上两个竖线表示范围效果。

9e3df8dcd100baa16fcc28f879f33314cafc2efe.png?token=4844e0652a2af4708ad335f7b9bb40aa

0df3d7ca7bcb0a4623b0141c55807c226a60af6b.png?token=a78116eadf6e1a2ab16966caa2125710

使用# 和 * 表示

3801213fb80e7bec471a92aa11cd333e99506ba6.png?token=1d5b564509d2e1f5411592688d7367e9

第三种:添加耗时的图形化进度条

c2fdfc039245d688c4c072229b21f718d01b245b.png?token=0f7abd29d8269479c757e71d3f5c24c0

1a91e1125904b2decf4a8d1d61adbde9.gif

总结:

这里试了几种方法,还有很有其它想法可以自己去试试,后面的文章会用实际下载内容再来展示效果。

(全文完)

建构主义教学的核心是什么?

python小游戏设计入门5-捡金币游戏(下)

用流程图带你更好理解python语法

教你实现一个gif处理软件(上)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值