python 函数中的参数 args 和 kwargs 有哪些区别?

如题所述

第1个回答  2023-11-23
在Python中,函数的参数分为位置参数(args)和关键字参数(kwargs)。它们的区别如下:

1. 位置参数(args):
- 位置参数是按照顺序传递给函数的参数。
- 位置参数需要在函数定义时指定,且数量固定。
- 位置参数可以用于传递任意类型的数据。

2. 关键字参数(kwargs):
- 关键字参数是通过键值对的形式传递给函数的参数。
- 关键字参数不需要在函数定义时指定,数量不固定。
- 关键字参数可以用于传递任意类型的数据。

示例代码:

```python
def func(a, b, *args, **kwargs):
print("a:", a)
print("b:", b)
print("args:", args)
print("kwargs:", kwargs)

func(1, 2, 3, 4, x=5, y=6, z=7)
```

输出结果:

```
a: 1
b: 2
args: (3, 4)
kwargs: {'x': 5, 'y': 6, 'z': 7}
```