1.函数的定义

函数是一段代码的表示
定义方法:

def <函数名> (<参数(0个或多个)>):
 <函数体>
 return <返回值>


-函数定义时,所指定的参数是一种占位符
-函数定义后,如果不经过调用,不会被执行

1.函数可以有参数,也可以没有,但必须保留括号

def <函数名> ():
 <函数体>
 return <返回值>
2.可选参数


函数定义时可为某些参数指定默认值,构成可选参数。

def <函数名> (<非可选参数>,<可选参数>):
 <函数体>
 return <返回值>

注:1.非可选参数必须放在可选参数前面
2.可选参数必须赋初值

3.可变参数
函数定义时可以设计可变数量参数,即不确定参数总数量

def <函数名> (<参数>,’*'b):
 <函数体>
 return <返回值>


eg.假设fact(n,*b)还一个求阶乘的函数,

fact(10,3)
 10886400fact(10,3,5,8)
 435456000

2.函数调用

函数调用时,参数可按照位置或名称方式传递

eg. def fact(n,m=1):
 s=1
 for i in range(1,n+1):
 s*=i
 return s//m


位置传递

fact(10,5)
 725760

名称传递

fact(m=5,n=10)
 725760

3.函数的返回值

函数可以返回0个或多个结果
-return保留字用来传递函数返回值
-函数可以有返回值,也可以没有,可以有return,也可以没有

eg. def fact(n,m=1):
 s=1
 for i in range(1,n+1):
 s*=i
 return s,n,m
fact(10,5)
 (725760,10,5) //元组类型a,b,c=fact(10,5)
 print(a,b,c)
 725760,10,5

4.局部变量和全局变量

局部变量:只在函数内部调用
全局变量:程序的全局变量

两大规则:
规则1:1.局部变量是函数内部的占位符,与全局变量可能重名但是不同
2.函数运算结束后,局部变量被释放
3.可以使用global保留字在函数内部使用全局变量

规则2:1.基本数据类型(如整数,浮点数),无论是否重名,局部变量与全局变量不同
2.组合数据类型(如列表),如果局部变量未真实创建,则是全局变量

python function函数的用法 python中函数的用法_全局变量


python function函数的用法 python中函数的用法_全局变量_02


python function函数的用法 python中函数的用法_可选参数_03

5.lambda函数

-lambda函数是一种匿名函数,即没有名字的函数
-使用lambda保留字定义,函数名是返回结果
-lambda函数用于定义简单的、能够在一行内表示的函数

<函数名>=lambda<参数>:<表达式>

eg.>>>f=lambda x,y:x+y

f(10,15)
25
定义了两个变量x与y,它们之间的运算表达式是x+y,即函数f为求两数和的函数

在使用时也可省略参数
eg.

f=lambda: “lambda函数”
 print(f())
 lambda函数