函数的参数传递
参数个数
函数可以有参数,也可以没有参数,但必须保留括号
def <函数名>():<函数体>return<返回值>
可选参数传递
函数定义时可以为某些参数指定默认值,构成可选参数
def <函数名>(<非可选参数>,<可选参数>):<函数体>return<返回值>
计算n!//m的值,如果不给m,直接返回n!
def fact(n,m=1):s = 1for i in range (n,n+1):s *= 1return(s//m)
fact(10)
则直接返回10n!,fact(10,3)
则返回10n!除以3的值
python要求在定义函数时,可选参数必须放在非可选参数后,非可选参数也叫必选参数,也就是你要调用这个函数的时候必须要有这个参数,必须有的放前,可有可不有的放后。
可变参数传递
函数定义时可以设计可变数量参数,即不确定参数总数量
def <函数名>(<参数>,*b):<函数体>return<返回值>
计算n!乘数
df fact(n,*b):s = 1for i in range (1,n+1):s *= ifor item in b:#b为组合数据类型,包含一个或多个数s*=itemreturn s
fact(10,3)
则计算10!与3相乘,fact(10,3,5)
则计算10!与3和5相乘
for in 可以看出此时的b为组合数据类型,包含一个或多个数,我们每次把它其中的数取出来,逐次与s相乘
函数的返回值
函数可以返回0个或多个结果,返回多个结果时使用“ ,”分隔,返回值输出时使用一个小括号,中间用逗号的形式来体现,这种形式是一种组合数据类型叫做元组类型