下面是Python中的函数的详细讲解和使用攻略。
函数是什么?
函数是程序员在程序中定义的一段可以被其它代码多次调用的、能够完成特定功能的程序块。函数通常包含若干条语句,其中可能会有输入和输出。通过定义好的函数,我们可以在程序中实现代码的复用,提高程序的复杂度。
如何定义函数?
Python定义函数的语法如下:
def 函数名(参数列表):
函数体(包含若干条语句)
return 返回值
def
是Python函数定义的关键字,后面要留有空格。函数名
是由字母或下划线组成,命名规范与变量命名规范相同。参数列表
是包含在一对()
中间的变量或者常量。函数体
是函数具体实现的代码块,包含若干条语句。return
是返回语句,可以返回函数执行过程中得到的数值。
例如,下面是一个简单的函数示例,用于计算两个数相加的和:
def add(a, b):
c = a + b
return c
这里定义了一个名为add
的函数,其中包含两个参数a
和b
。函数体中利用加法运算符将这两个参数相加,结果赋值给新变量c
。最后,通过return
语句将变量c
的值返回。
如何调用函数?
Python中调用函数时,要根据定义函数时的参数列表来传入参数。传入参数的方式有两种:位置参数和关键字参数。
位置参数
位置参数是指按照函数定义时参数列表中的顺序传递参数,调用函数时要按照对应位置传递参数。示例如下:
print(add(3, 4)) # 输出结果为7
关键字参数
关键字参数是指通过参数名来指定传递的参数。关键字参数可以不按照函数定义的顺序传递,同时可以不传递所有参数。示例如下:
print(add(b=4, a=3)) # 输出结果为7
示例1
下面给出一个完整的函数定义与调用示例,该函数用于判断一个数字是否为偶数:
def is_even(number):
if number % 2 == 0:
return True
else:
return False
print(is_even(3)) # 输出结果为False
print(is_even(4)) # 输出结果为True
示例2
下面给出一个求平均值的函数示例,其中包含多个参数:
def average(*args):
total = 0
count = 0
for arg in args:
total += arg
count += 1
return total / count
print(average(1, 2, 3, 4, 5)) # 输出结果为3.0
这里由于平均值求和的数字个数不固定,因此使用了特定语法*args
,它表示可以传入任意多个参数。在函数体中,利用循环语句将传入的参数累加求和,最后除以计数器的值即可得到平均值。