在Python中定义函数参数主要有以下几种方式:
位置参数:
这是最常见的参数传递方式,调用函数时必须按照形参的顺序提供实参。
```python
def func(a, b, c):
return a + b + c
result = func(1, 2, 3) 正确的调用方式
默认参数:
可以为参数设置默认值,这样在调用函数时如果没有提供该参数,将使用默认值。
```python
def greet(name, greeting="Hello"):
print(greeting, name)
greet("Alice") 输出 "Hello Alice"
greet("Bob", "Hi") 输出 "Hi Bob"
关键字参数:
在调用函数时,可以通过参数名指定实参的值,这样可以不按顺序传递参数。
```python
def func(a, b, c):
return a + b + c
result = func(c=99, a=11, b=33) 正确的调用方式,参数顺序可以不同
可变参数:
使用`*args`可以接收任意数量的位置参数,它们被打包成一个元组。使用` kwargs`可以接收任意数量的关键字参数,它们被打包成一个字典。
```python
def func(*args, kwargs):
print(args) 打印所有位置参数
print(kwargs) 打印所有关键字参数
func(1, 2, 3, name="Alice", age=30)
以上是Python中定义函数参数的基本方法。