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

Python中如何使用函数定义?

发布时间:2023-06-06 12:12:39

Python中函数定义是一种将一组有序的语句封装到一个单元中,以完成特定的功能的编程技术。函数在编程过程中起到了重要的作用,能够提高代码的复用性和代码的可维护性。函数定义一般由三个部分组成,分别是函数的头、函数的函数体和函数的返回值。函数的头部描述了函数的调用方式和参数列表,函数体则是具体的实现部分,返回值是函数执行后的结果。

Python中函数定义的语法格式如下所示:

def function_name(parameters):
   """docstring"""
   statement(s)
   return [expression]

- def:定义函数的关键字

- function_name:函数名称

- parameters:可选的函数参数列表,用逗号分隔

- docstring:可选的函数文档字符串,用于描述函数的作用、参数、返回值等信息

- statement(s):函数体,即需要执行的语句

- return [expression]:返回语句,可以省略。用于返回结果给函数调用者。

如果函数没有参数,则可以省略参数列表的括号。例如:

def function_name():
   """docstring"""
   statement(s)
   return [expression]

下面是一个 Python 函数定义的例子:

# 定义函数
def print_info(name, age):
    """打印人员信息"""
    print("Name:", name)
    print("Age:", age)
    return

# 调用函数
print_info("Tom", 20)
print_info("Jerry", 25)

在上面的例子中,函数 print_info 接收两个参数 nameage,并打印出来。函数 return 语句用来返回空值。

Python中函数的参数

Python函数的参数是可选的,可以在定义函数时指定。函数定义时,可以为参数指定默认值,如果没有提供实际的参数值,将使用默认值。Python中函数的参数类型分为4种:位置参数、默认参数、可变参数和关键字参数。

位置参数:传递给函数的实参按照位置顺序依次与形参对应。

def print_info(name, age):
    print("Name:", name)
    print("Age:", age)

调用函数时,实参的位置和形参的位置是一一对应的。

print_info("Tom", 20) # 输出 Name: Tom, Age: 20

默认参数:默认参数是在参数列表的最后面指定的可选参数。如果用户没有指定,则使用默认值。

def print_info(name, age=20):
    print("Name:", name)
    print("Age:", age)

调用函数时,可以不给 age 参数传值,此时会使用默认值。

print_info("Tom") # 输出 Name: Tom, Age: 20

可变参数:可变参数用于传递不定长度的参数。可变参数可以接收0个或任意个参数。

def print_info(*args):
    for arg in args:
        print(arg)

调用可变参数函数时,可以传入任意数量的位置参数,这些参数将被包装成一个元组,并作为参数传递给函数。

print_info("Tom", 20) # 输出 Tom 20
print_info("Tom", 20, "M") # 输出 Tom 20 M

关键字参数:关键字参数用于传递不定长度的带有关键字的参数。关键字参数可以接收0个或任意个参数。

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

调用关键字参数函数时,可以传递任意数量的带有关键字的参数,这些参数将被包装成一个字典,并作为参数传递给函数。

print_info(name="Tom", age=20) # 输出 name: Tom, age: 20

Python中函数的返回值

函数可以返回一个值或者多个值。如果函数没有 return 语句,则会自动返回 None。如果函数有 return 语句,则可以返回任意类型的值,包括列表、元组、字典等。

下面是一个返回字符串的例子:

def get_name():
    name = "Tom"
    return name

name = get_name()
print(name)    # 输出Tom

下面是一个返回元组的例子:

def get_info():
    name = "Tom"
    age = 20
    return name, age

name, age = get_info()
print(name, age)   # 输出 Tom 20

Python中函数的注释

Python函数的注释是指函数的说明文档。函数的说明文档用于描述函数的作用、输入参数、输出结果等信息。函数的注释可以在函数的开头使用三个双引号或者三个单引号来指定多行注释。Python程序员通常使用这种注释方法来编写文档。

下面是一个函数的说明文档的例子:

def factorial(n):
    """Calculate the factorial of a number.
    
    Args:
        n: An integer number.
        
    Returns:
        The factorial of n.
    """
    if n == 1:
        return 1
    else:
        return n * factorial(n-1)

在这个例子中,函数的开头使用了多行注释来描述函数的作用、输入参数和输出结果。这个开头的注释被称为 docstring 。如果要查看函数的文档说明,可以使用内置函数 help(),如下所示:

help(factorial)
"""
Calculate the factorial of a number.

Args:
    n: An integer number.

Returns:
    The factorial of n.
"""