有一个函数,func
,它接受两个字符串参数,第一个有效,但是根据itertools文档,第二个不是也可以吗?函数当前打印一个随机字符串,作为返回,但在第二秒什么也不会打印
func(*("dog", "cat")) //works
itertools.starmap(func, [("dog", "cat")]) //fails without error message, nothing gets printed to screen
也许是太晚了(或太早),我错过了一个明显的错误吗?在
Tags:
itertools.starmap
返回一个迭代器;要真正执行它,您需要迭代它,例如使用list
:要在开始时获取结果列表(如果不需要延迟获取结果),请将迭代器调整为
list
(在Python3中):问题在于
starmap()
函数调用返回一个迭代器(即itertools.starmap
对象),而不是值本身的列表。在您的函数运行良好,但您应该通过迭代获得结果:
要在开始时获取结果列表(如果不需要延迟获取结果),请调整迭代器以列出:
^{pr2}$相关问题 更多 >
编程相关推荐