欢迎访问宙启技术站
智能推送

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中的五种函数参数类型,它们的使用场景各不相同,需要根据实际情况进行选择。