Python中的函数支持多种参数传递方式,主要有:
1. 位置参数:
- 根据位置顺序传入参数值。
- 用法:
def add(x, y):
return x + y
add(1, 2) # 3
2. 关键字参数:
- 根据参数名和赋值运算符
=
传入参数值。 - 可以使函数调用更加清晰,并且不依赖参数顺序。
- 用法:
def person(name, age):
print(f'Name: {name}, Age: {age}')
person(name='Jack', age=18)
3. 默认参数:
- 为参数指定默认值,如果没有传入值则使用默认值。
- 使得调用函数时可以忽略某些参数。
- 用法:
def add(x, y=10):
return x + y
add(5) # 15
add(5, 20) # 25
4. 可变参数:
- 使用
*
参数可以接受多个位置参数,组成一个tuple。 - 使用
**
参数可以接受多个关键字参数,组成一个dict。 - 使得函数可以处理任意数量的参数。
- 用法:
def person(name, *args):
print(f'Name: {name}')
for arg in args:
print(f'Hi {arg}')
person('Jack', 'Tom', 'Lucy')
def person(name, **kwargs):
print(f'Name: {name}')
for k, v in kwargs.items():
print(f'{k}: {v}')
person('Jack', age=18, city='New York')