Python制作运行进度条的实现效果(代码运行不无聊)
作者:叶庭云 发布时间:2021-04-11 15:46:10
标签:Python,运行,进度条
一、普通进度条
import sys
import time
# 普通进度条
# 在代码迭代运行中进行统计计算,并使用格式化字符串输出代码运行进度
def progress_bar():
for i in range(1, 101): # 1-100
print("\r", end="") # \r 表示将光标的位置回退到本行的开头位置
print("Download progress: {} {}%".format("▋" * (i // 2), i), end="")
sys.stdout.flush() # sys.stdout.flush()的作用就是显示地让缓冲区的内容输出。
time.sleep(0.02)
progress_bar()
运行效果如下:
二、带时间的进度条
import time
scale = 50
start = time.perf_counter() # 返回性能计数器的值(以秒为单位)
for i in range(scale + 1):
progress_bar = "▋" * i
completion_ratio = (i / scale) * 100
dur_time = time.perf_counter() - start
print("\rDownload Process:{:^3.0f}% [{}] {:.2f}s".format(completion_ratio, progress_bar, dur_time),end = "")
time.sleep(0.1)
运行效果如下:
三、利用tpdm生成进度条
from time import sleep
from tqdm import tqdm
# 里面传入一个可迭代对象
for i in tqdm(range(1, 101)):
# 模拟你的任务
sleep(0.05)
sleep(0.5)
运行效果如下:
四、利用progress生成进度条
import time
import progressbar
def custom_len(value):
# These characters take up more space
characters = {
'进': 3,
'度': 3,
}
total = 0
for c in value:
total += characters.get(c, 1)
return total
bar = progressbar.ProgressBar(
widgets=[
'进度: ',
progressbar.Bar(marker='#', left='|', right='|'),
' ',
progressbar.Counter(format='%(value)02d/%(max_value)d'),
],
len_func=custom_len,
)
for i in bar(range(100)):
time.sleep(0.05)
运行效果如下:
来源:https://blog.csdn.net/fyfugoyfa/article/details/108542672


猜你喜欢
- 具有不同标记颜色和大小的散点图演示。演示结果:实现代码:import numpy as npimport matplotlib.
- 本文实例讲述了Python3爬虫爬取英雄联盟高清桌面壁纸功能。分享给大家供大家参考,具体如下:使用Scrapy爬虫抓取英雄联盟高清桌面壁纸源
- 本文实例讲述了Python基于ThreadingTCPServer创建多线程代理的方法。分享给大家供大家参考,具体如下:#coding=ut
- 先准备好软件:一、安装Apache,配置成功一个普通网站服务器 运行下载好的“apache_2.0.55-win32-x86-no_ssl.
- 本文为大家分享了童年掌机游戏,基于pygame实现打砖块的具体代码,供大家参考,具体内容如下项目背景: 小时候有过一个掌机游戏机,里面有俄罗
- pyc的破解相对容易,使用cython将python文件编译成.so文件,能在一定程度上增强python源码的私密性。编译成.so文件环境准
- 本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下# coding:utf-8from
- 前言:macOS自带的Apache可以提供通过http://localhost:8081访问本地文件服务,那么python有没有类似功能的库
- php服务端与客户端交互、提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一
- 任务说明:编写一个钱币定位系统,其不仅能够检测出输入图像中各个钱币的边缘,同时,还能给出各个钱币的圆心坐标与半径。效果代码实现Canny边缘
- CentOS7服务器中apache、php7以及mysql5.7的配置代码如下所示:yum upgradeyum install net-t
- Switch简介Go的switch的基本功能和C、Java类似:switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯
- 终于皇天不负有心人,答案还是让我找到了。 网上的都是这样用的 $content = iconv("utf-8",&quo
- 格式: SELECT column FROM table_name START WITH column=value CONNECT BY P
- 效果图自定义一个Item新建一个QWidget对象在QWidget内添加Layout在Layout内添加要的控件为QWidget设置Layo
- 无图形界面的代码编写python代码作为脚本语言,其实最好直接使用vim在字符界面里面直接编写,这才是正道,但是作初学者,其实直接在服务器上
- 参考链接亲测试以下版本成功激活附激活教程。idea下载链接(对应版本号下载):https://www.jetbrains.com/idea/
- python部分#!/usr/bin/env Python# coding=utf-8from ctypes import *from Py
- 本文实例讲述了Python实现FTP上传文件或文件夹实例。分享给大家供大家参考。具体如下:import sys import os impo
- 在更改列顺序之前,你需要考虑是否的确需要更改表中的列顺序。SQL的核心要点是从数据存储格式获取应用。总应指定检索数据的顺序。在下面的第1条语