Python如何改变Tqdm进度条样式?

6

有没有可能改变tqdm进度条的样式?

[Step 1]: 100%|███████████████████████████  | 109/109 [00:03<00:00, 32.46it/s]

翻译成:

转化为类似于

[Step 1]: 100%[==========================>  ] 109/109 [00:03<00:00, 32.46it/s]
2个回答

15
for i in range tqdm(<iterator>, total=<>, ascii=' >='):
    <your code here>

这应该可以解决问题,“ascii”参数读取的是填充字符的第一个字符,这里是空格,你也可以使用其他字符,比如ascii=“░▒█”,那么条形图就会变成这样

0%[░░░░░░░░░░░░░░░░░░░░░]

最后一个字符是进度条在某个程度上填充的字符,例如:
30%[███████░░░░░░░░░░░░░░]

任何你放在中间的字符都会在进度条填充时随之移动,例如当进度从30%到40%的时候。

35%[███████▒░░░░░░░░░░░░░]

我希望这解答了你的问题,你可以在中间使用多个正在进行的字符,比如
ascii=" ▖▘▝▗▚▞█"

试用一下这个,观看进度条的变化非常有趣,前提是你的控制台支持所有的Unicode字符。


1

在实例化 bar 时,您可以传递 ascii 参数。第一个字符是空字符,第二个字符是填充字符。

from tqdm import tqdm
from time import sleep
with tqdm(total=100, ascii=' =') as pbar:
    for i in range(10):
        sleep(0.1)
        pbar.update(10)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接