Python3 函数


Python3 函数

函数是一个能够完成特定任务的可重复使用代码块。它们允许代码重用,提高了代码可读性和可维护性。

定义函数

在Python中,函数使用 def 关键字来进行定义,后接函数名以及一组括号。括号内可包含输入参数,多个参数使用逗号分隔,也可不包含任何参数。函数定义语法如下:

def function_name(parameters):
    """docstring"""
    statement(s)

函数定义由以下几个要素组成:

  • 函数名
  • 参数(可选)
  • 函数体

在Python中, 每个函数都有一个docstring, 用于简单描述函数的作用和参数等信息。

以下是一个求和函数的例子:

def sum(x, y):
    """求和函数"""
    return x + y

调用函数

定义函数后,可以通过其名字直接调用函数,并向其传递相应的参数进行计算。调用函数时,参数传递顺序必须与函数定义中的参数顺序一致。函数调用语法如下:

function_name(parameters)

以下是调用sum函数的方法:

print(sum(4, 5))

输出:

9 

参数传递

Python中所有的参数都是按照引用传递。函数内部所做的更改将影响到函数外的变量。

同时,函数可以指定默认参数值,这样在调用函数时,如果没有传递参数,将使用指定的默认值。

def sum(x, y=0):
    """带有默认值的求和函数"""
    return x + y 

以下是调用带有默认参数值的sum函数的方法:

print(sum(4)) # 只传入一个参数,y将使用默认值0 

输出:

4 

可变参数

Python中还存在另一种参数类型,叫做可变参数,在函数里可以使用星号 * 来表示。可变参数可以接受任意数量的参数,并存储为元组。

函数定义方式如下:

def add(*numbers):
    """可变参数函数"""
    total = 0
    for num in numbers:
        total += num
    return total

以下是可变参数函数的使用方法:

print(add(1,2,3,4,5)) # 传递多个参数

输出:

15

返回值

在Python中,函数可以返回一个值或多个值。

只要使用关键字 return 就可以将结果返回给函数的调用者。可以返回任意类型的结果。

以下是一个例子:

def max_num(x, y):
    """求两个数的最大值"""
    if x > y:
        return x
    else:
        return y

以下是调用带有返回值的函数的方法:

print(max_num(4, 5))

输出:

5

范围

在Python中,函数定义所写的代码都遵从着作用域规则。在函数内定义的任何变量都在局部作用域内,只能在该函数内访问。如果输入参数与函数内定义的变量名称相同,则输入参数将优先于函数内部的变量。

num = 10  # 全局变量
 
def foo():
    num = 5 # 局部变量
    print("|num =", num)
 
foo()

print("num =", num) # 访问全局变量

这样,全局变量和局部变量之间就是互相独立的。

lambda 函数

lambda函数是一种用于创建小函数的特殊方式,也称为匿名函数。使用lambda函数创建一个简单的函数,它会接受任意数量的参数但只返回一个表达式的值。

以下是一个lambda函数的例子:

x = lambda a, b : a + b
print(x(1, 2))

输出:

3

以上就是Python3函数的相关知识。通过对于Python函数的学习,我们可以更好地理解函数的作用及其实现方式,为我们的编程工作提供更好的帮助和支持。