在tqdm中获取后缀字符串

3

我有一个tqdm进度条,使用set_postfix_str方法在代码的某个部分设置后缀字符串,在另一个部分,我需要追加到这个字符串中。下面是一个最小可复现示例。

import numpy as np
from tqdm import tqdm

a = np.random.randint(0, 10, 10)
loop_obj = tqdm(np.arange(10))

for i in loop_obj:
    loop_obj.set_postfix_str(f"Current count: {i}")
    a = i*2/3  # Do some operations
    loop_obj.set_postfix_str(f"After processing: {a}")  # clears the previous string
    
    # What I want
    loop_obj.set_postfix_str(f"Current count: {i}After processing: {a}")

有没有一种方法可以使用 set_postfix_str 来追加已设置的字符串?

1个回答

2
您可以将新的后缀直接添加到旧的后缀中,如下所示:
import numpy as np
from tqdm import tqdm

a = np.random.randint(0, 10, 10)
loop_obj = tqdm(np.arange(10))

for i in loop_obj:
    loop_obj.set_postfix_str(f"Current count: {i}")
    a = i*2/3  # Do some operations
    loop_obj.set_postfix_str(loop_obj.postfix + f" After processing: {a}")

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