返回

Python 函数中的 5 种参数:写代码的精髓

前端

在 Python 中,函数是代码组织和重用的基本单元。而函数的参数是函数的重要组成部分,它们允许我们在调用函数时传递数据。Python 提供了多种参数类型,每种类型都有其独特的用途和规则。

1. 默认参数

默认参数是在定义函数时提供的值。如果在调用函数时没有传递该参数,则使用默认值。默认参数必须位于其他类型参数的后面。

def greet(name, message="Hello"):
    print(f"{message} {name}!")

greet("Alice")  # 输出:Hello Alice!
greet("Bob", "Howdy")  # 输出:Howdy Bob!

2. 可变参数

可变参数允许我们在函数调用时传递任意数量的参数。可变参数必须使用星号 * 作为前缀。

def sum_numbers(*numbers):
    total = 0
    for number in numbers:
        total += number
    return total

print(sum_numbers(1, 2, 3))  # 输出:6
print(sum_numbers(1, 2, 3, 4, 5))  # 输出:15

3. 参数

关键字参数允许我们在调用函数时显式指定参数名和参数值。关键字参数必须使用双冒号 : 作为前缀。

def greet(name, message):
    print(f"{message} {name}!")

greet(message="Howdy", name="Alice")  # 输出:Howdy Alice!

4. 命名关键字参数

命名关键字参数是关键字参数的变体,它允许我们在函数定义中指定参数的默认值。命名关键字参数必须使用双星号 : 作为前缀。

def greet(name, message="Hello", **kwargs):
    print(f"{message} {name}!")
    for key, value in kwargs.items():
        print(f"{key}: {value}")

greet("Alice")  # 输出:Hello Alice!
greet("Bob", "Howdy", title="Mr.", age=30)  # 输出:Howdy Bob!
                                             # Title: Mr.
                                             # Age: 30

5. 位置参数

位置参数是函数定义中没有显式指定默认值的参数。位置参数必须位于其他类型参数的前面。

def greet(name, message):
    print(f"{message} {name}!")

greet("Alice", "Hello")  # 输出:Hello Alice!

通过了解和掌握 Python 函数中的不同参数类型,我们可以编写更灵活、更易读的代码。这些参数类型可以帮助我们处理各种输入情况,并使我们的代码更具可重用性。