首页 > Python返回时如何解包?

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 starmap

a = [(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)]

【热门文章】
【热门文章】