将列表元素作为Python中的单个项返回

时间:2014-04-12 11:49:32

标签: python list return

嗨,Stackoverflow的人,

我有一个计算列表的函数,我想单独返回列表中的每个元素,就像这样(接收此返回的函数用于处理未定义数量的参数):

def foo():
    my_list = [1,2,3,4]
    return 1,2,3,4

列表中的元素数量是未定义的,所以我不能这样做:

return my_list[0], my_list[1], ...

我认为必须有一个简单的解决方案,但我似乎无法绕过它。 有什么建议?谢谢!

编辑:感谢您的回答,所以这是我的问题的扩展,这是我的问题:

def foo():
    my_list = [1,2,3,4]
    return "any_other_value", my_list

所以,我想要的是当我致电foo()bar = foo()bar[0] = "any_other_value", bar[1] = 1, bar[2]=3, bar[3] = 4时。并且my_list的长度不确定(这里只有4个元素)。

1 个答案:

答案 0 :(得分:1)

你太复杂了。只是做你正在做的事情(我想你可以将它转换为你用tuple(my_list)显示它的方式,但这是不必要的):

return my_list

这就是你需要做的所有事情,因为当你调用那个带有未定义数量参数的函数时,你可以这样调用它:

function_with_undefined_number_of_params(*foo())

*将返回的list解包为单独的参数。