Python函数的参数
时间: 2024-08-02 11:01:32 浏览: 31
在Python中,函数可以接受零个、一个或多个参数。函数定义时可以在圆括号内指定参数名和它们的数据类型,也可以省略数据类型,让Python通过上下文自动推断。参数有几种常见的传递方式:
1. **位置参数**:按照函数定义时的顺序传入,是最基本的形式。
```python
def greet(name):
print(f"Hello, {name}!")
greet("Alice") # 输出 "Hello, Alice"
```
2. **关键字参数**:通过参数名直接传递,这允许你在调用函数时不按特定顺序,甚至在定义后添加新参数。
```python
def person_info(**info): # info是一个字典,接收任意键值对
for key, value in info.items():
print(f"{key}: {value}")
person_info(name="Bob", age=30) # 输出 "name: Bob" 和 "age: 30"
```
3. **默认参数**:如果某个参数设置了默认值,那么如果没有提供该参数,就会使用默认值。
```python
def calculator(a, b=10, c=20):
result = a * b + c
return result
print(calculator(5)) # 输出 75 (默认b=10, c=20)
```
4. **可变参数**:
- `*args`:用于处理不确定数量的位置参数,所有参数会被打包成一个元组。
- `**kwargs`:用于处理不确定数量的关键字参数,所有参数会被打包成一个字典。
```python
def mix(*args, **kwargs):
print("Positional arguments:", args)
print("Keyword arguments:", kwargs)
mix(1, 2, 3, name="John", city="New York")
```