Python:接受多个参数

Python:接受多个参数,python,printing,Python,Printing,在Python中,我试图创建一个可以接受1个或多个参数的函数。为了简单起见,让我们假设我想要制作一个打印所有传递参数的函数 def print_all(**arguments**): print(arg1, arg2, ..., argN) 因此,print\u all(“A”、“B”)将输出AB 传递的参数数可以是1个或多个字符串 执行此操作的最佳方法是什么?您正在寻找*args的用法,它允许您向函数传递多个参数,而无需考虑要传递的参数数量 示例: >>> def

在Python中,我试图创建一个可以接受1个或多个参数的函数。为了简单起见,让我们假设我想要制作一个打印所有传递参数的函数

def print_all(**arguments**):
    print(arg1, arg2, ..., argN)
因此,
print\u all(“A”、“B”)
将输出
AB

传递的参数数可以是1个或多个字符串


执行此操作的最佳方法是什么?

您正在寻找
*args
的用法,它允许您向函数传递多个参数,而无需考虑要传递的参数数量

示例:

>>> def arg_funct(*args):
...     print args
...
>>> arg_funct('A', 'B', 'C')
('A', 'B', 'C')
>>> arg_funct('A')
('A',)
这里,此函数返回传递给函数的参数元组

有关更多详细信息,请检查:

仅此:

def print_all(*args):
    for arg in args:
        print(arg)

*args和**kwargs允许向函数传递任何数量的参数、位置(*)和关键字(**)

>>> def test(*args):
...     for var in args:
...         print var
... 
>>> 
对于变量的编号

>>> test("a",1,"b",2)         
a
1
b
2

>>> test(1,2,3)
1
2
3
列表和目录

>>> a = [1,2,3,4,5,6]
>>> test(a)
[1, 2, 3, 4, 5, 6]
>>> b = {'a':1,'b':2,'c':3}
>>> test(b)
{'a': 1, 'c': 3, 'b': 2}

使用splat运算符(
*
)传递一个或多个位置参数。然后将它们作为字符串连接到函数中以打印结果

def print_all(*args):
    print("".join(str(a) for a in args))

>>> print_all(1, 2, 3, 'a')
123a
可能重复的