在 tqdm 中获取后缀字符串

Get the postfix string in tqdm

我有一个 tqdm 进度条。我在代码的某些部分使用 set_postfix_str 方法设置后缀字符串。在另一部分,我需要附加到这个字符串。这是一个 MWE。

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 附加到已设置的字符串?

您可以像这样将新后缀附加到旧后缀:

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}")