(本文仅作为学习记录使用)
01. 昨日内容回顾
02. 作业讲解
03. 什么是函数
04. 函数怎么定义
05. 函数的调用
06. 函数的执行过程
07. 函数的返回值
08. 函数的参数
01. 昨日内容回顾
请参照思维导图链接:https://www.cnblogs.com/smithpath/articles/10524528.html
02. 作业讲解
无
03. 什么是函数
为了保证代码不重复使用,提升代码效率,我们使用函数代替那些重复的代码.
04.函数怎么定义
简单来说,函数就是:
def make(): 函数体
def是关键字,make是函数名,里面是函数体.
注意,定义之后的函数不调用是不执行的.
05. 函数的调用
函数名+( ) == 函数的调用
注意,要先定义后调用
仅仅 print(函数名)会输出函数的内存地址.
06. 函数的执行过程
定义 -- 调用 -- 函数体的代码
07. 函数的返回值
注意,return作为返回值是可以修改的.
print(函数名())即可输出return .
return后的函数不会往下继续执行.
return的作用:
1.返回值单个就它本身,多个是一个元组.
2.return后面什么都不写返回none, 不写return也返回none.
3.return返回值给调用者.
4.遇到return,就不执行下面的函数,并且结束函数运行.
函数名+小括号,无论在什么地方就是在调用函数.
08. 函数的参数
函数的形参,实参和传参:
def make(char,addr,sex): # 形参 char print('姓名%s'%char) print('住址%s,性别%s'%(addr,sex)) print('结束')
make('西施','吴国','女')#实参:西施,吴国,女
传参:将实参传递给形参的过程
位置参数:
按顺序一一对应是位置参数.
PS:三元运算符
c= a if a > b else b
条件成立的结果 条件 条件不成立的结果
def func(a,b,c,d=1): # 形参 (位置+默认)混合形参 print(a,b,c,d)
其中d = 1 是默认参数.
函数声明只需要在需要默认参数的地方用 =
号给定即可, 但是要注意所有的默认参数都不能出现在非默认参数的前面。
在调用函数时候,参数个数和位置一定要按照函数定义。如果我们忘记了函数的参数的位置,只知道各个参数的名字,可以在 函数调用的过程中给指明特定的参数 func(a=1, b=2)
, 这样的话,参数的位置将不受影响.
PS:
首先明确,变量是一个更大的范围。
所有的形参都是局部变量,所有的实参都是全局变量。用集合的角度来说,就是形参是局部变量的子集,实参是全局变量的子集。
这里解释一下为什么形参都是局部变量。
形参是局部变量,全局变量在程序开始时创建并分配空间,在程序结束时候释放内存并销毁,局部变量是在函数调用的时候创建,在函数调用结束后销毁并释放,形参在函数调用时才分配空间,在函数调用后释放,所以是局部变量。
参考: https://www.cnblogs.com/derezzed/articles/8119592.html
PS:
小结:
什么是函数:
将一些功能进行封装和复用
函数的定义:
def 关键字 函数名():
函数体
def make():
print(1)
函数的调用:
函数名+() # 调用函数的时候不再缩进内 必须顶行调用
函数的返回值:
1.没有return就默认返回None
2.写了return 没有写返回值 默认返回None
3.多个返回值的时候,返回的是一个元组
4.一个返回值的时候,返回的就是返回值本身
5.return 下面的代码不执行,并且结束这个函数
函数的参数:
形参 函数定义的时候
位置参数 a,b 传参的时候一一对应从实参处接受
默认参数 a=1 在定义的时候就设定好值了
实参 函数调用的时候
位置参数 1,2, 传参的时候一一对应给形参
关键字参数 a=1 通过形参的名字指定传值
混合:
形参 def func(a,b,d,f=1):
实参 func(1,2,3,f=2)
传参 将实参传递给形参的过程
参数级别 位置参数 > 关键字(默认)参数
三元运算符:
条件的成立的结果 条件 条件不成立的结果
c = a if a>b else b
应用场景: 在不知道赋值的内容时可以使用
一行进行判断