0

我有一个作为输入的函数*args

def foo(*args): 
    for a in args:
        print(a)

这按预期工作

> foo('a', 'b')
> a
> b

我面临一种情况,我不知道要传递多少个参数(这是 的全部要点args),但我不知道如何创建要传递给的“位置参数列表”功能。

部分挑战是恰当地表达问题。

让我举个例子:这个函数可能被称为foo('a')或者它可能被称为foo('a', 'b', 'c', 'd', 'e')但我不知道,因为这个函数被另一个类调用,它创建了未知数量的参数列表。

本质上,我想创建一个包含如下参数的变量:

positional_arguments = ('a','b','c')

这样该函数就可以像foo(positional_arguments).

然而,这不起作用,因为它没有正确解包positional_arguments

> foo(positional_parameters)
> ('a', 'b', 'c')

但我想要的是

> foo(positional_parameters)
> a
> b
> c
4

0 回答 0