dival.util.std_out_err_redirect_tqdm module

Redirecting writing to tqdm (the progressbar).

Taken from tqdm docs.

class dival.util.std_out_err_redirect_tqdm.DummyTqdmFile(file)[source]

Bases: object

Dummy file-like that will write to tqdm.

file

File to write to using tqdm.write().

Type

file object

__init__(file)[source]
Parameters

file (file object) – File to write to using tqdm.write().

write(x)[source]

Call tqdm.write.

Parameters

x (str) – Text.

flush()[source]

Flush file.

dival.util.std_out_err_redirect_tqdm.std_out_err_redirect_tqdm(std_out=None)[source]

Context manager that redirects sys.stdout and sys.stderr to tqdm.

std_outNone or file object

If None is passed, sys.stdout and sys.stderr are redirected to tqdm. If a file object is passed, it is yielded immediately and no redirection is done. This is useful for nested calls:

def func(std_out=None)
    with std_out_err_redirect_tqdm(std_out) as std_out:
        for i in tqdm(range(7), file=std_out):
            print(i)

with std_out_err_redirect_tqdm() as std_out:
    func(std_out=std_out)
Yields

std_out (file object) – The original sys.stdout if std_out=None is passed, else std_out.