Essa é uma aula especial onde eu vou te mostrar como construir uma barra de progresso no Python para seus códigos e automações!
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:
Nessa aula meu objetivo é te ensinar a criar uma barra de progresso no Python para que você consiga visualizar como está o progresso de um código que estiver rodando.
Assim você vai ter uma noção de quando ele vai acabar ou em qual parte ele ainda está!
Você sabia que é possível criar uma barra de progresso dos códigos em Python para verificar quando seu código vai estar perto de terminar?
Bem parecido com uma barra de carregamento de arquivos que vemos normalmente, só que para que você consiga verificar o progresso do seu código, assim sabe o tempo e em qual parte ele ainda está!
Hoje eu quero te mostrar como criar barras de progresso no Python para que você possa acompanhar seus códigos a medida em que está executando-os!
Antes de começar a criar nossa barra de progresso nós vamos precisar instalar a biblioteca tqdm que vai auxiliar nesse processo.
Para isso basta escrever no terminal ou no prompt (depende de qual editor está utilizando) o seguinte comando: pip install tqdm.
Outra biblioteca que vamos utilizar para mostrar um exemplo é a biblioteca requests, o procedimento de instalação é o mesmo: pip install requests.
O primeiro exemplo que é o mais simples é o seguinte:
from tqdm import tqdm
import time
# forma mais simples
for i in tqdm(range(10)):
time.sleep(1)
É esse código que é apenas uma estrutura de repetição For para repetir essa parte indo de 1 a 10 com um pequeno intervalo entre essas etapas.
Você vai notar que já vai ter a sua barra de progresso na parte inferior do programa (aqui estamos utilizando o PyCharm).
Então você vai conseguir visualizar o percentual, a quantidade de etapas e o tempo necessário para rodar esse código.
Dessa forma você vai conseguir saber em qual etapa o seu código está e qual o percentual que já foi concluído.
Pois como isso não é algo padrão dos códigos é muito interessante para o seu controle saber o progresso do código, se precisar parar a execução, se já está acabando…
Temos um segundo exemplo que é bem parecido, mas aqui podemos ajustar de forma manual.
with tqdm(total=100) as barra_progresso:
for i in range(10):
time.sleep(1)
barra_progresso.update(10)
Aqui podemos atribuir um total, então ao invés de 10 (como no exemplo anterior) nós vamos ter 100 e o nosso update será de 10 em 10.
2 pontos importantes, esse update não necessariamente vai ser em percentual, pois se colocarmos 10 e o nosso total for 50, cada 10 vai corresponder a 20% ao invés de 10%.
Outro ponto é que temos um for que é repetido 10 vezes, aqui é muito importante tomar cuidado, pois se o nosso update for 1, por exemplo.
Quando terminarmos os 10 ele vai dar como concluído o código, mas nossa barra de progresso vai finalizar em 10%, porque atualizou 1 a cada vez que o for foi executado.
Agora vamos a um exemplo prático para facilitar o entendimento!
# quero entregar pra cidade do Rio de Janeiro
import requests
# passo 1: pegar a lista de ceps
with open("ceps.txt", "r") as arquivo:
ceps = arquivo.read()
ceps = ceps.split("\n")
# passo 2: pegar as informações de cada cep
enderecos_entrega = []
for cep in tqdm(ceps):
link = f'https://cep.awesomeapi.com.br/json/{cep}'
# passo 3: verificar se a cidade é RIo de Janeiro
requisicao = requests.get(link)
resposta = requisicao.json()
cidade = resposta['city']
bairro = resposta['district']
# passo 4: printar o cep e o bairro
if cidade == "Rio de Janeiro":
enderecos_entrega.append((cep, bairro))
print(enderecos_entrega)
Esse é um código relativamente simples, mas o que vamos fazer aqui é seguinte. Nós temos uma lista de CEPs (que também está disponível para download) e vamos fazer alguns passos!
Aqui você vai conseguir ver na prática como a barra de progresso é bem útil tanto para verificar quantos CEPs nós temos e se o código está rodando normal ou se ele travou.
E claro, para você verificar o tempo de execução e o percentual em que está no momento.
Veja que logo no final nós vamos ter o print do que queríamos também!
Que são os CEPs e os bairros que correspondem ao Rio de Janeiro. Você pode até colocar um print do tamanho dessa variável que criamos para verificar que o total de CEPs é de apenas 28, pois dentro da nossa verificação só eles são do RJ.
Nessa aula eu te mostrei como visualizar o progresso dos códigos para que você possa ter um controle maior da execução do seu código.
Além disso te mostrei um exemplo prático de onde você pode utilizar uma barra de progresso em um caso real.
Agora você já sabe como pode utilizar a barra de progresso para te auxiliar na visualização do progresso dos seus códigos e nas suas automações!
Para acessar outras publicações de Python, clique aqui!
Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.