****1.函数的理解和定义
def <函数名>(<参数(0个或多个)>):
<函数体>
return <返回值>
eg: 计算 n!
def fact(n):
s=1
for i in range(1,n+1)
s*=i
return s
2.函数的使用及调用过程
fact(10)
3.函数的参数传递
def <函数名>(<非可选参数>,<可选参数>):
<函数体>
return <返回值>
def fact(n,m=1):
s=1
for i in range(1,n+1)
s*=i
return s//m
>>>fact(10)
>3628800
>>>fact(10,5)
>725760
函数定义时可以设计可变数量参数,即不确定参数总数量
def <函数名>(<参数>,*b):
<函数体>
return <返回值>
eg:
计算n!乘数
def fact(n,*b)
s=1
for i in range(1,n+1):
s*=i
for item in b:
s*=item
return s
>>>fact(10,3)
>10886400
>>>fact*10,3,5,8)
>435456000
函数调用时,参数可以按照位置或名称方式传递
fact(m=5,n=10)
用名称的方式传递
4.函数的返回值
函数可以返回0个或多个结果
return s//m,n,m
fact(10,5)
(725760,10,5)元组类型
>>>a,b,c=fact(10,5)
>>>print(a,b,c)
5.局部变量和全局变量
global a,b,c
在内部声明a为全局变量
//
/局部变量为组合数据类型且未创建,等同于全局变量
ls=[“F”,“f”]
def func(a):
ls.append(a)//未被真实创建,等同于全局变量
return
func(“c”)
print(ls)
“f,F,c”
ls=["f","F"]
def func(a):
ls=[]//此处ls是列表类型,真实创建
ls.append(a)
return
func("c")
print(ls)
"f,F"
6.lambda函数****
lambda函数返回函数名作为结果
-lambda函数是一种匿名函数,即没有名字的函数
-使用lambda保留字定义,函数名是返回结果
-lambda函数用于定义简单的,能够在一行内表示的函数
<函数名>=lambda<参数>:<表达式>
等价于:
def <函数名>(<参数>):
<函数体>
return <返回值>