*args, **kw
时间: 2024-11-06 20:11:20 浏览: 10
Python中的多重装饰器
在Python编程中,`*args` 和 `**kwargs` 是两个特殊的语法结构,用于处理不定数量的位置参数和关键字参数。
1. `*args`(星号参数)允许你在函数定义中接收任意数量的位置参数,将它们作为一个元组(tuple)传递。当你调用这个函数时,可以传入任意数量的位置参数,这些参数会被收集到一个元组中。例如:
```python
def my_func(*args):
for arg in args:
print(arg)
my_func(1, 2, 3) # 输出: 1 2 3
```
2. `**kwargs`(双星号参数)也类似,它接受任意数量的关键字参数,并将它们存储在一个字典(dictionary)中,其中键是参数名,值是对应的值。调用函数时可以用形式如`param_name=value`的方式提供这些参数。例如:
```python
def another_func(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
another_func(name='Alice', age=30) # 输出: name: Alice, age: 30
```
阅读全文