python函数传参
时间: 2023-07-07 10:24:37 浏览: 96
Python 函数传参有两种方式:
1. 位置参数(positional arguments):按照参数位置顺序传递参数,调用函数时需要按照定义顺序传递参数。
2. 关键字参数(keyword arguments):直接指定参数名传递参数,调用函数时可以不按照定义顺序传递参数。
例如,定义一个函数 `add(x, y)`,可以使用位置参数传参:
```python
def add(x, y):
return x + y
result = add(1, 2)
print(result) # 输出 3
```
也可以使用关键字参数传参:
```python
result = add(x=1, y=2)
print(result) # 输出 3
result = add(y=2, x=1)
print(result) # 输出 3
```
还可以混合使用位置参数和关键字参数:
```python
result = add(1, y=2)
print(result) # 输出 3
result = add(x=1, 2)
print(result) # 报错,位置参数必须在关键字参数之前
```
在定义函数时,可以使用默认参数来设置参数的默认值,调用函数时可以不传递该参数,使用默认值:
```python
def add(x, y=1):
return x + y
result = add(1)
print(result) # 输出 2
result = add(1, 2)
print(result) # 输出 3
```
还可以使用可变参数和关键字可变参数,分别使用 `*` 和 `**` 来表示。可变参数可以接收任意个参数,关键字可变参数可以接收任意个关键字参数。
```python
def add(*args, **kwargs):
print(args) # 输出一个元组
print(kwargs) # 输出一个字典
add(1, 2, 3, x=4, y=5) # 输出 (1, 2, 3) 和 {'x': 4, 'y': 5}
```
阅读全文