在编写脚本的过程中,对于要重复完成的工作,我们可以提取出来,将其编写为函数,在脚本中使用时,调用即可,在python中,函数必须先声明,然后才能在脚本中使用。使用函数时,只要按照函数定义形式向函数传递必须的参数,就可以调用函数完成所需的功能。
自定义函数
函数声明、调用
在python中使用def可以声明一个函数。完整的函数是由函数名、参数以及函数实现语句组成的,在函数中也用缩进来表示语句属于函数体。
如果函数有返回值,那么需要在函数中使用return语句返回计算结果,声明函数形式一般如下:
def<函数名> (参数列表):
<函数语句>
return <返回值>
其中参数和返回值不是必须的。
def hi(): # 定义一个hi()函数,这里没有参数,但是需要写一对圆括号。
print('hello,word !')
hi() # 调用函数
print(hi) # 返回函数在内存中的地址
输出结果:
hello,word !
<function hi at 0x000001ECEE2EE040>
例题1,定义函数max(a,b),用来求a和b中较大的数。
def max(a,b): #定义函数max,a和b为形参
if a>b: return a # return返回比较结果
else: return b
print(max(12,45)) #函数调用,12和45为实参,是实际参与比较的数据
输出结果:
45
例题2,定义一个完整的函数,实现求一个列表所有整数之和的功能,其中L为所要求和的列表,result是列表中所有整数的和,最后使用return将result的值返回。
def ListSum(L): #定义函数
result = 0
for i in L:
result = result + i
return result
List = [ 1, 2, 3,4 ] #给出列表
Sum = ListSum( List )#调用函数
print( Sum )
输出结果:
10
Python的函数比较灵活。与C语言中函数的声明相比,在Python中声明一个函数时,不需要声明函数类型,也不需要声明参数的类型。
Python 在实际调用函数的过程中也非常灵活,不需要为不同类型的参数声明多个函数,或在处理不同类型数据的时候调用相应的函数。大部分情况下都可以用同一个函数调用不同的数据类型。
例题3,打印参数对象中的所有成员:
def PrintAll(x):
for i in x:
print(i)
l = [1, 2, 3, 4] # 列表
PrintAll(l)
t =