Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将值数组扩展到函数调用中的参数_Python - Fatal编程技术网

Python 将值数组扩展到函数调用中的参数

Python 将值数组扩展到函数调用中的参数,python,Python,我得到一个值数组,我想将它们发送到一个具有相同参数计数的预定义函数 天真的做法是: values = [1,2,3,4] # getting it from outside if len(values) == 1: func(values[0]) elif len(values) == 2: func(values[0], values[1]) . . . 还有更优雅的方式吗?您可以使用 输出将是 1 1 2 或者通过func(值) 你可以用 输出将是 1 1

我得到一个值数组,我想将它们发送到一个具有相同参数计数的预定义函数

天真的做法是:

 values = [1,2,3,4] # getting it from outside
 if len(values) == 1:
     func(values[0])
 elif len(values) == 2:
     func(values[0], values[1])
 .
 .
 .
还有更优雅的方式吗?

您可以使用

输出将是

1
1
2
或者通过
func(值)

你可以用

输出将是

1
1
2
或者通过
func(值)


func(values)
func(values)
?当您可以只执行
func(values)
时不一定。我的问题是函数可以是:def func(a):或def func(a,b):等等,所以我调用func我不必在数组大小上执行if-else,只需使用数组调用func,它就会知道如何放置数组[0]在一个变量和一个数组[1]中,在b变量中,你会自动使用变量参数,
func(a)
till
func(a,b,c,d)
?你需要某种条件来确定传递了多少个参数,或者你需要一个中间函数,它可以为你做到这一点@asaf你不能真正避免这样的情况,参数的数量是可变的,当你只需要执行
func(values)
。我的问题是这个函数可以是:def func(a):或def func(a,b):等等,所以我调用func,我不必对数组大小执行if-else,只要用数组调用func,它就会知道如何将数组[0]放入var,将数组[1]放入bvar自动执行。如果有变量参数,
func(a)
直到
func(a,b,c,d)
?你需要某种条件来确定传递了多少个参数,或者你需要一个中间函数,它可以为你做到这一点@asaf你不能真正避免这样的情况,因为参数的数量是可变的
def func(values):

    for value in values:
        print(value)

values = [1]
func(values)

values = [1, 2]
func(values)