c语言编程笔录

首页 >   > 笔记大全

笔记大全

Python函数参数案例代码分析

更新时间:2023-12-14

函数参数 - 默认参数

默认参数可以在定义函数时为参数指定一个默认值。如果函数调用时未传递参数,则会使用默认参数。

def greet(name, msg="你好!"):
    """
    给定一个名字,打印出问候语
    """
    print("你好,", name + ',' + msg)

greet("小明")
greet("小红", "很高兴见到你!")

以上代码中,函数 greet() 中的参数 msg 具有默认值 "你好!",如果在函数调用时没有给出值,则使用默认值。

函数参数 - 关键字参数

关键字参数和函数调用相关的函数参数的顺序无关。Python解释器能够使用参数名称匹配参数值。

def area(width, height):
    """
    计算矩形面积
    """
    return width * height

print("Area 1: ", area(width=5, height=10))
print("Area 2: ", area(height=10, width=5))

在上述代码中,我们传递的参数都是以名称为基础的。这种传递不受参数位置的影响。

函数参数 - 可变参数

如果你不知道传递给函数的参数数量是多少,我们可以使用星号 (*) 来代替数量不定的参数。

def print_nums(*nums):
    """
    传入可变数量的参数打印每个值
    """
    for num in nums:
        print(num)

print_nums(1, 2, 3)
print_nums(0, 1, 1, 2, 3, 5, 8)

在上述代码中,我们使用星号 (*) 来代替数量不定的参数列表。我们能够传递任意数量的参数,并且这些参数都成为了一个叫做 nums 的元组,我们能够访问元组中的所有参数。

函数参数 - 关键字可变参数

如果你不知道将会传递多少关键字参数,则可以使用两个星号 (**) 来代替数量不定的关键字参数。

def person_info(**info):
    for key, value in info.items():
        print(f"{key} : {value}")

person_info(name='Dave', age=45, city='New York')

使用两个星号 (**) 代替不定量的关键字参数。以上代码中,我们传递了很多个不确定参数,但是我们可以使用上面的代码将其打印出来并进行处理。

总结: Python 函数有四种类型的参数。默认参数、关键字参数、可变参数以及关键字可变参数。使用这些参数,可以让你更好地为你编写的 python 函数设计符合需求的接口。这些参数通常在我们处理需要大量数据的函数时最为实用。