在函数中返回多个值时出现问题?

ano*_*non 1 python tuples python-3.x

我在函数中返回了几个值:

def count_chars(e):
    return len(e), 'bar'
Run Code Online (Sandbox Code Playgroud)

像这样:

for d in lst:
    newlst = []
    for x in d["data"]:
        newlst.extend([x, count_chars(x)])
        d["data"] = newlst
pprint(lst)
Run Code Online (Sandbox Code Playgroud)

但是,当我返回值进入元组时:

{'data': ['YES', (9, 'bar')], 'info': 'AKP'}
Run Code Online (Sandbox Code Playgroud)

我怎样才能摆脱元组?对于

{'data': ['YES', 9, 'bar'], 'info': 'AKP'}
Run Code Online (Sandbox Code Playgroud)

sch*_*ggl 5

tuple使用*操作符解压缩函数结果(即a ):

newlst.extend([x, *count_chars(x)])
Run Code Online (Sandbox Code Playgroud)

该语法仅在Python> = 3.5中可用.否则你可以使用简单的连接:

newlst.extend([x] + list(count_chars(x)))
Run Code Online (Sandbox Code Playgroud)