Para tornar meu código mais "pythônico" e mais rápido, eu uso "multiprocessamento" e uma função de mapa para enviar a) a função eb) o intervalo de iterações.
A solução implantada (ou seja, chame tqdm diretamente no intervalo tqdm.tqdm (intervalo (0, 30)) não funciona com multiprocessamento (conforme formulado no código abaixo).
A barra de progresso é exibida de 0 a 100% (quando o python lê o código?), Mas não indica o progresso real da função do mapa.
Como exibir uma barra de progresso que indica em qual etapa está a função 'mapa'?
from multiprocessing import Pool
import tqdm
import time
def _foo(my_number):
square = my_number * my_number
time.sleep(1)
return square
if __name__ == '__main__':
p = Pool(2)
r = p.map(_foo, tqdm.tqdm(range(0, 30)))
p.close()
p.join()
Qualquer ajuda ou sugestão é bem vinda ...