Explicación detallada de la biblioteca de barra de progreso de Python tqdm

El módulo tqdm es una biblioteca de barras de progreso de Python, que se divide principalmente en dos modos operativos

Ejecutar en un objeto iterable: tqdm(iterator)

importtimefromtqdmimporttqdm,trange#trange(i)是tqdm(range(i))的一种简单写法foriintrange(100):time.sleep(0.05)foriintqdm(range(100),desc='Processing'):time.sleep(0.05)dic=['a','b','c','d','e']pbar=tqdm(dic)foriinpbar:pbar.set_description('Processing '+i)time.sleep(0.2)100%|██████████|100/100[00:06<00:00,16.04it/s]Processing:100%|██████████|100/100[00:06<00:00,16.05it/s]Processinge:100%|██████████|5/5[00:01<00:00,4.69it/s]

Actualizar manualmente

importtimefromtqdmimporttqdmwithtqdm(total=200)aspbar:pbar.set_description('Processing:')# total表示总的项目, 循环的次数20*10(每次更新数目) = 200(total)foriinrange(20):# 进行动作, 这里是过0.1stime.sleep(0.1)# 进行进度更新, 这里设置10个pbar.update(10)Processing::100%|██████████|200/200[00:02<00:00,91.94it/s]

descripción del parámetro del módulo tqdm

classtqdm(object):"""
  Decorate an iterable object, returning an iterator which acts exactly
  like the original iterable, but prints a dynamically updating
  progressbar every time a value is requested.
  """def__init__(self,iterable=None,desc=None,total=None,leave=False,file=sys.stderr,ncols=None,mininterval=0.1,maxinterval=10.0,miniters=None,ascii=None,disable=False,unit='it',unit_scale=False,dynamic_ncols=False,smoothing=0.3,nested=False,bar_format=None,initial=0,gui=False):

iterable: objeto iterable, no es necesario configurarlo al actualizar manualmente

desc: Cadena, texto de descripción de la barra de progreso izquierda

total: el número total de artículos

dejar: valor booleano, si se mantiene la barra de progreso después de completar la iteración

archivo: la salida apunta a la ubicación, el valor predeterminado es el terminal y, por lo general, no es necesario configurarlo

ncols: ajuste el ancho de la barra de progreso, el valor predeterminado es ajustar automáticamente la longitud de acuerdo con el entorno, si se establece en 0, no habrá barra de progreso, solo la información de salida

unidad: el texto que describe el elemento de procesamiento, el valor predeterminado es 'it', por ejemplo: 100 it/s, si se establece en 'img' para procesar fotos, es 100 img/s

unit_scale: convierta automáticamente las unidades de velocidad de procesamiento del proyecto de acuerdo con los estándares internacionales, como 100000 it/s >> 100k it/s

El siguiente es un ejemplo de muestra

importtimefromtqdmimporttqdm# 发呆0.5sdefaction():time.sleep(0.5)withtqdm(total=100000,desc='Example',leave=True,ncols=100,unit='B',unit_scale=True)aspbar:foriinrange(10):# 发呆0.5秒action()# 更新发呆进度pbar.update(10000)Example:100%|███████████████████████████████████████████████████|100k/100k[00:05<00:00,19.6kB/s]

¿Puede el tqdm de Python ajustar el color de la barra de progreso?

Se puede ajustar mediante el parámetro bar_format, por ejemplo:

from tqdm import trange
from colorama import Fore

for i in trange(int(1e7), bar_format='{l_bar}%s{bar}%s{r_bar}' % (Fore.BLUE, Fore.RESET)):
    pass

Esto hace que la barra de progreso se vuelva azul.

Supongo que te gusta

Origin blog.csdn.net/liuyukuan/article/details/128758647
Recomendado
Clasificación