Python返回时如何解包?
比如
a = [(1,2,3), (1,2)]def foo(*args):
return args[0]+1, args[1:]
b = list(map(foo, a))
例子希望b能是[(2,2,3), (2,2)],但是args[1:]是一个tuple,而且也无法用*解包。
应该如何实现?(不使用循环取出实现的话)
回答:
from itertools import starmapa = [(1,2,3), (1,2)]
def foo(*args):
return (args[0]+1,) + args[1:]
b = list(starmap(foo, a))
回答:
a = [(1,2,3), (1,2)]def foo(*args):
return (args[0][0] + 1,) + args[0][1:]
b = list(map(foo, a)) # [(2,2,3), (2,2)]
以上是 Python返回时如何解包? 的全部内容, 来源链接: utcz.com/a/165350.html