Python:在终端中动态显示多进程的执行进度

2023-01-12  本文已影响0人  Anoyi

举例

安装依赖包

pip3 install rich

示例代码

import time
import multiprocessing
from rich.progress import Progress


def do_kmeans(param1):
    time.sleep(0.5)
    return param1

def call_do_kmeans(params):
    return do_kmeans(*params)

if __name__ == "__main__":
    algo_params = []
    results = []
    for x in range(100):
        algo_params.append([x])

    with Progress() as progress:
        task_id = progress.add_task("[cyan]Working...", total=len(algo_params))
        with multiprocessing.Pool(processes=5) as pool:
            for result in pool.imap(call_do_kmeans, algo_params):
                results.append(result)
                progress.advance(task_id)

参考文档

上一篇 下一篇

猜你喜欢

热点阅读