繁体   English   中英

在 joblib 中打印函数的输出

[英]Print the output of a function in joblib

我正在尝试使用joblib来并行化在函数上运行的循环。 我希望显示函数的中间print命令,而不仅仅是函数的return值。

from joblib import Parallel, delayed

def dummy(i):
    print("the value passed is",i)

Parallel(n_jobs=2)(delayed(dummy)(i) for i in range(0,5,1))

我得到以下输出:

[None,
 None,
 None,
 None,
 None]

我想得到以下输出(或类似的东西):

[the value passed is 0,
the value passed is 1,
the value passed is 2,
the value passed is 3,
the value passed is 4]

编辑:我刚刚注意到它确实在启动我的 Jupyter 笔记本的终端窗口中打印了我需要的输出。 关于如何在我的笔记本中实际print它的任何想法。 提前致谢。

将您的i参数放入函数虚拟Parallel(n_jobs=2)(delayed(dummy(i)) for i in range(0,5,1))

from joblib import Parallel, delayed def dummy(i): return "the value passed is " + str(i) Parallel(n_jobs=2)(delayed(dummy)(i) for i in range(0,5,1))

输出::

[the value passed is 0,
the value passed is 1,
the value passed is 2,
the value passed is 3,
the value passed is 4]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM