Python中的函数参数类型有哪些?
发布时间:2023-06-09 17:12:26
Python中的函数参数类型有五种,分别为位置参数、默认参数、可变参数、关键字参数和命名关键字参数。
1. 位置参数
位置参数是最常见且最基本的参数类型。它是指在函数定义中按照位置顺序排列的参数,调用时必须按照函数定义的顺序传入相应的值,否则会出现参数数量不匹配的错误。例如:
def greet(name, age):
print('Hello, my name is %s and I am %d years old.' % (name, age))
greet('Tom', 20)
2. 默认参数
默认参数是在函数定义时为其指定默认值,当调用函数时不指定该参数值就会使用默认值。需要注意的是,如果有多个默认参数,则后面的参数必须在前面的参数之后。例如:
def greet(name, age=25):
print('Hello, my name is %s and I am %d years old.' % (name, age))
greet('Tom')
3. 可变参数
可变参数是在函数定义时指定为*args的参数,可以接受任意数量的位置参数,并将其封装为一个元组(tuple)。例如:
def my_sum(*args):
s = 0
for i in args:
s += i
return s
print(my_sum(1, 2, 3, 4)) # 10
4. 关键字参数
关键字参数也是在函数定义时指定的参数,但是它们与传入参数的名称相对应,可以在函数调用时通过参数名进行传递。例如:
def greet(name, age):
print('Hello, my name is %s and I am %d years old.' % (name, age))
greet(age=20, name='Tom')
5. 命名关键字参数
命名关键字参数是指在函数定义时使用*和名字相同的参数作为分隔符,表示该参数必须通过名称传递。例如:
def greet(name, *, age):
print('Hello, my name is %s and I am %d years old.' % (name, age))
greet(name='Tom', age=20)
以上就是Python中的五种函数参数类型,它们的使用场景各不相同,需要根据实际情况进行选择。
