Criar uma barra de progresso é realmente útil se você tem uma tarefa de longa duração e gostaria de saber o quanto já está. Nesta postagem, falaremos sobre dois pacotes para a criação de barras de progresso em Python : tqdm e progressbar2 .
Indice
Criação de uma barra de progresso com o pacote tqdm do Python
Vamos começar instalando o tqdm . Podemos fazer isso usando pip:
pip install tqdm
Depois de instalar o tqdm , ele é simples de usar. Essencialmente, precisamos apenas envolver qualquer objeto sobre o qual estamos fazendo um loop (ou seja, qualquer objeto que seja iterável) dentro do tqdm . Então, quando o código for executado, o Python imprimirá uma barra de progresso para que você saiba o quão longe você está.
from tqdm import tqdm
result = 0
for i in tqdm(range(10000000)):
result += i
![python tqdm](https://i1.wp.com/theautomatic.net/wp-content/uploads/2020/09/python-tqdm-package.png?w=640)
tqdm também pode ser usado em compreensões de lista ou dicionário, como abaixo. Nesse caso, usamos tqdm para nos fornecer o status de progresso de dados de preços de extração para uma coleção de ações .
import yahoo_fin.stock_info as si
tickers = si.tickers_dow()
stocks = [si.get_data(ticker) for ticker in tqdm(tickers)]
![barra de progresso python](https://i1.wp.com/theautomatic.net/wp-content/uploads/2020/10/python-create-progress-bar.png?w=640)
O tqdm também pode ser utilizado em processos assíncronos.
from tqdm.asyncio import trange, tqdm
async for i in trange(100):
print(i)
Você pode aprender mais sobre tqdm verificando sua documentação aqui .
O pacote progressbar2
Outra opção é usar o pacote progressbar2 . Semelhante ao anterior, podemos instalar o progressbar2 usando pip:
pip install progressbar2
Podemos replicar nosso exemplo acima usando progressbar2 em vez de tqdm .
import progressbar
tickers = si.tickers_dow()
data = {ticker : si.get_data(ticker) for ticker in tickers}
![python progressbar2](https://i2.wp.com/theautomatic.net/wp-content/uploads/2020/10/python-progressbar2.png?w=640)
Criação de barras de progresso em comprimento desconhecido
progessbar2 também lida com barras de progresso com comprimento desconhecido. Por exemplo, vamos dar uma olhada no código abaixo. Aqui, temos um loop while que é executado continuamente até que os segundos do tempo atual sejam iguais a 30. Isso pode ser útil para informar quanto tempo passou enquanto um trecho de código estava em execução.
bar = progressbar.ProgressBar(max_value=progressbar.UnknownLength)
i = 0
while True:
i += 1
if time.localtime().tm_sec == 30:
break
bar.update(i)
![comprimento da barra de progresso desconhecido do python](https://i1.wp.com/theautomatic.net/wp-content/uploads/2020/10/progress-bar-unknown-length-python.png?w=640)
Outros tipos de barras de progresso
O pacote progressbar2 oferece uma coleção de outros tipos de barra de progresso. Por exemplo, podemos gerar uma barra minimalista que mostra apenas a porcentagem de quão longe o processo foi.
bar = progressbar.ProgressBar(
widgets=[
progressbar.Percentage()
])
for i in bar(range(1000)):
time.sleep(0.1)
![barra de progresso python perentage](https://i0.wp.com/theautomatic.net/wp-content/uploads/2020/10/python-percentage-progress-bar.png?w=640)
Aqui está outro exemplo, onde a barra de progresso desliza para frente e para trás até que o loop seja concluído.
bar = progressbar.ProgressBar(
widgets=[
progressbar.BouncingBar()
])
for i in bar(range(1000)):
time.sleep(0.1)
Para saber mais sobre progressbar2 , consulte este link .
É tudo por agora! Se você gostou de aprender como criar uma barra de progresso com Python, por favor, compartilhe esta postagem com seus amigos. Saiba mais sobre Python / R / ciência de dados CLIQUE AQUI.