当我们编写程序时,某一段重复的代码片段可能会被多次使用。在这种情况下,将这段代码封装成一个函数,可以避免在程序中多次编写相同的代码,提高程序的可维护性和复用性。Python中定义一个函数非常简单,以下是定义函数的完整攻略:
1. 定义函数的语法
def function_name(parameters):
"""函数文档字符串,用于描述函数功能和输入输出"""
# 函数体,用于实现函数的功能
return [expression] # 返回值,可选
其中,function_name
是函数名,parameters
是函数的输入参数,可以是多个,用逗号分隔。函数体用于实现函数的功能,return
语句用于返回函数的输出值(可选)。
函数的完整格式应该包含以下几个部分:函数名、函数文档字符串、函数参数、函数体和返回值。
2. 函数的文档字符串
在函数定义的第一行字符串,用三个双引号或三个单引号括起来,用来对函数进行描述。Python中,这个字符串被称为函数的文档字符串(docstring),它不能省略,也是定义函数的重要部分。
def function_name(parameters):
"""函数的文档字符串
用于描述函数功能、输入输出等信息"""
# 函数体
return [expression] # 返回值
3. 函数的参数
函数的参数是函数体内可使用的局部变量,它们是作为输入传递给函数的信息。函数定义时可以指定一个或多个参数,多个参数使用逗号分隔。
def function_name(parameter1, parameter2, ...):
"""函数的文档字符串
用于描述函数功能、输入输出等信息"""
# 函数体
return [expression] # 返回值
4. 函数体
函数体是定义函数的主要部分,它包含了实现函数功能的代码。函数体可以使用参数、局部变量和全局变量,这些变量的作用域和可见性与其它语言中的函数体类似。
def function_name(parameter1, parameter2, ...):
"""函数的文档字符串
用于描述函数功能、输入输出等信息"""
# 函数体
var = parameter1 * parameter2
print(var)
return [expression] # 返回值
5. 函数的返回值
函数可以有返回值,也可以没有返回值。如果函数没有返回值,则省略 return 语句。如果函数有返回值,则使用 return 语句返回。
def function_name(parameter1, parameter2, ...):
"""函数的文档字符串
用于描述函数功能、输入输出等信息"""
# 函数体
var = parameter1 * parameter2
return var # 返回值
以下是两个简单的函数定义代码实例示范:
# 示例 1:定义一个求和函数,对两个参数进行求和并返回结果
def add_numbers(a, b):
"""输入:两个整数;输出:两个整数之和"""
# 计算结果
result = a + b
# 返回结果
return result
# 示例 2:定义一个计算平均值的函数,对多个参数进行平均值的计算并返回结果
def compute_average(*args):
"""输入:多个数字;输出:这些数字的平均值"""
# 计算平均值
total = sum(args)
average = total / len(args)
# 返回结果
return average
以上代码分别定义了两个函数:add_numbers
和compute_average
。add_numbers
函数接收两个参数,将它们相加并返回结果。compute_average
函数接收不定个数的参数,计算这些参数的平均值并返回结果。定义一个函数要注意函数名、参数个数和参数类型的正确性,以及参数的默认值等。