我目前正在对一组要并行化的变量进行合并。我的代码如下所示:
mergelist = [
('leftfile1', 'rightfile1', 'leftvarname1', 'outputname1'),
('leftfile1', 'rightfile1', 'leftvarname2', 'outputname2')
('leftfile2', 'rightfile2', 'leftvarname3', 'outputname3')
]
def merger(leftfile,rightfile,leftvarname,outvarname):
do_the_merge
for m in mergelist:
merger(*m)
通常,为了加速长循环,我将mergelist中的for m替换为类似于。。。。在
^{pr2}$但是由于我使用星来解包元组,所以我不清楚如何正确地映射它。如何获得*m
?在
使用
lambda
:您可以在merge函数中解压缩元组:
另一个选项是在参数列表中解压缩:
^{pr2}$编辑:要解决操作问题:
退货
IMHO最简单的解决方案是更改合并函数,或添加包装:
我看到@delnan实际上也在评论中提出了这个解决方案。在
为了增加一点价值:)你也可以这样包装它:
^{pr2}$这可以让你简化到
相关问题 更多 >
编程相关推荐