赞
踩
当我们需要在程序中多次执行同一类型的任务时,不需要反复编写代码段来完成任务,而是可以利用函数工具来大大方便我们的编程工作。
函数是可重复使用的、用来实现相关联功能的代码段。
定义函数的基本结构是:
def functionname( parameters ):
"函数_文档字符串"
function_suite
return [expression]
定义函数以def关键词开头,后面跟着函数名、圆括号()、括号中的参数、冒号;
接着,在缩进块中编写函数体,函数的第一行语句一般是写文档字符串,用于存放函数说明,也可以选择不写;
Return[expression]表示结束函数,并返回值。而不带表达式的return相当于返回空值。
定义函数的时候,参数的名字和位置定下来了,函数的接口定义也就完成了。我们在调用函数时,只用知道该传递什么样的参数,函数内部的运行情况已经被封装,使用者不必了解。
Python 的函数参数主要包含以下几种:
必选参数;
默认参数;
可变参数;
关键字参数。
必选参数
必选参数也叫位置参数,是函数中最常用的参数。必选参数就是在调用函数的时候必须指定参数值。
#定义加法函数plus,参数a,b就是必选参数
def plus(a,b):
c=a+b
return(c)
#调用函数plus时,必须给参数a,b传递值
d=plus(1,2)
# 输出结果d
print(d)#3
如果调用plus函数时,传入的参数不符合要求,则会出现错误。
>>d = plus()
>
TypeError: plus() missing 2 required positional arguments: 'a' and 'b'
>>d = plus(1)
TypeError: plus() missing 1 required positional argument: 'b'
默认参数是指给函数参数提供默认值,如果在调用函数的时候没有给该参数传递值,则该参数使用默认值。例如:
# 定义加法函数plus,参数a是必选参数,参数b是默认值2的参数
def plus(a,b=2):
c=a+b
return(c)
# 调用函数plus时,必须给参数a传递值,若不给b传递值,则b默认为2
d=plus(1)
# 输出结果d
print(d)
从上面的例子可以看出,在函数调用过程中可以不用给默认参数传递参数值。但在使用默认参数时,有两点需要注意:默认参数要放在所有必选参数的后面;默认参数必须指向不变对象。
在有些情况下,我们在定义函数的时候,还不能确定函数应该包含多少个参数,这时我们可以使用可变参数,可变参数就是传入的参数数量是可变的。
# 定义plus函数,完成的功能是返回输入的整数之和。
# 参数numbers是可变参数,表示输入的参数个数可以为任意值
def plus(*numbers):
add = 0
for i in numbers:
add += i
return(add)
# 调用3次plus函数,每次的参数个数都不相同
d1 = plus(1,2,3)
d2 = plus(1,2,3,4)
d3 = plus(1,3,5,7,
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。