在 Python 中,可变参数允许函数接受任意数量的参数。这些参数被封装成一个元组(Tuple)或列表(List),并作为参数传递给函数。
Python 中有两种类型的可变参数:
下面是使用可变参数的示例:
def sum(*args):
total = 0
for num in args:
total += num
return total
print(sum(1, 2, 3)) # 输出:6
print(sum(4, 5, 6, 7)) # 输出:22
在上面的例子中,sum()
函数定义使用了 *args 参数,它可以接受任意数量的位置参数。在函数体内,使用循环将传递的参数加总,并返回总和。
def print_info(**kwargs):
for key, value in kwargs.items():
print(key + ": " + value)
print_info(name="Alice", age="25", city="New York")
在上面的例子中,print_info()
函数定义使用了 **kwargs 参数,它可以接受任意数量的关键字参数。在函数体内,通过遍历 kwargs 字典的键值对,按照指定的格式打印出参数的名称和值。
def func(x,**kwargs):
print(x)
print(kwargs)
print('总共有%d个参数'%len(kwargs))
print('这些参数分别为:',kwargs)
func(20,name='rose',age=18)
D:\学习\Python工程\venv\Scripts\python.exe D:/学习/Python工程/practice/test_demo.py
20
{'name': 'rose', 'age': 18}
总共有2个参数
这些参数分别为: {'name': 'rose', 'age': 18}
Process finished with exit code 0
使用可变参数可以使函数更加灵活,能够接受不固定数量的参数。同时,还可以与固定参数一起使用,例如结合位置参数和可变参数,或结合关键字参数和可变参数。需要根据具体的需求来选择合适的参数类型与组合方式。