有没有办法将字符串列表作为逗号分隔的字符串传递给 python 中的函数参数

Is there of a way to pass a list of strings as comma separated strings to a function's args in python

我想无限制地从用户那里获取字符串并将其作为不同的参数传递给函数,例如

user_input = "Hello World! It is a beautiful day."

我想将这个由空格分隔的字符串作为参数传递给一个函数,即

func("Hello", "World!", "It", "is", "a", "beautiful", "day.")

而且我不能传递列表或元组,它必须是多个字符串。我是 python 的新手,抱歉,如果解决方案很简单

您可以为此使用 *args(如果需要,还可以使用 **kwargs)。 (More details here)

def func(*args):
    for s in args:
        print(s)

然后在您的调用中,您可以使用 *split 的结果解压缩为单独的参数。 (更多关于 extended iterable unpacking

>>> user_input = "Hello World! It is a beautiful day."
>>> func(*user_input.split())
Hello
World!
It
is
a
beautiful
day.