Python 测验 - 函数


Python 测验 - 函数

一、函数的定义

在Python中,函数是一段可被代码重复调用执行的代码块,其定义方式如下:

def 函数名(参数列表):
    函数体
    return 返回值

其中,def关键字用于定义函数,后跟函数名、一对括号和一对冒号。参数列表是可选的,函数体中的代码则是函数的主要逻辑。return语句用于返回函数的结果。

下面是一个加法函数的例子:

def add(x, y):
    result = x + y
    return result

该函数接受两个参数xy,并返回它们的和。

二、函数的调用

调用函数时,需要指定函数名和必要的参数,如下所示:

result = add(1, 2)
print(result)  # 输出: 3

这里调用了上面定义的add函数,并传递了12作为参数,函数返回值被赋值给result变量,并在屏幕上打印出结果3

三、函数的参数

Python中的函数支持多种参数类型:

位置参数

位置参数是指按照函数定义中参数的位置传递的参数。例如,上面样例中的add函数的参数xy就是位置参数。

result = add(1, 2)

这种方式传递参数时,需要按照定义顺序传递参数值。

关键字参数

关键字参数是指通过关键字传递的参数,这样可以仅传递某些参数,而无需按定义时的顺序传递参数。

result1 = add(x=1, y=2)
result2 = add(y=2, x=1)

这两种方式都可以调用上面定义的add函数,并得到相同的结果。

默认参数

默认参数是在函数定义时就指定的参数值,如果调用函数时没有传递该参数,函数将使用默认值。

def add(x, y=5):
    result = x + y
    return result

这里的参数y被指定了默认值5。如果调用该函数时只传递了x参数,那么y将使用默认值。

result = add(1)
print(result)  # 输出: 6

这里只传递了x=1参数,函数使用y=5的默认值。

可变参数

可变参数是指一个函数可以接受任意个数的参数,在参数前加上*符号即可实现可变参数。

def add(*args):
    result = 0
    for arg in args:
        result += arg
    return result

这个函数可以接受任意个数的参数,并将它们相加,返回结果。

result1 = add(1, 2, 3)
result2 = add(1, 2, 3, 4, 5)

这两种方式都可以调用上面定义的add函数。

关键字可变参数

关键字可变参数是指一个函数可以接受任意数量的关键字参数,在参数前添加**即可实现关键字可变参数。

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

这个函数可以接受任意数量的关键字参数,并将它们输出到控制台。

print_info(name="张三", age=18)
print_info(name="李四", age=20, address="上海")

这两种方式都可以调用上面定义的print_info函数。

四、总结

Python中的函数非常灵活,可以使用不同的参数类型进行定义和调用。熟练使用这些参数类型,可以让代码更加简洁、易于维护,提高开发效率。