Python核心编程基础篇2021.01.04
指导教师:逻辑教育讲师Amy
一、函数的返回值
- 1.函数返回值定义
- 使用
return
作为关键字返回函数内容 - 函数返回值返回到函数调用处
- 若没有
return
返回值,则函数运行结束时默认返回值为None
(称为隐含返回值)
- 使用
- 2.函数多个返回值
- 程序执行函数体内代码时,遇到第一个
return
就结束函数运行,返回函数调用处 - 函数有多个返回值时,返回值间用
,
隔开,所有返回值组成元组返回
- 程序执行函数体内代码时,遇到第一个
二、函数作用域
- 1.作用域介绍:程序中的变量并不是在哪里都可以访问的,取决于变量是在哪里定义的。变量作用域决定了哪一部分程序可以访问变量。Python作用域一共有四种,其优先级、作用域由小到大为L→E→G→B。
if
条件判断、for
循环等没有作用域概念。L(local)
:局部作用域,即函数中定义的变量G(global)
:全局变量,模块级别定义的变量B(build-in)
:内建作用域,系统固定模块里的变量,如int()
E(enclosing)
:嵌套父级函数的局部作用域
- 2.
global
关键字:当我们在函数体内部修改全局变量时,可以将函数内局部变量使用global
声明为全局变量
- 3.
nonlocal
关键字:将局部变量声明为enclosing
三、递归函数
- 函数直接或间接调用其本身
- 递归函数没有结束条件,需人为设置
- 能用递归实现的程序可以用循环实现,且递归效率低,所以很少使用
四、内置文件中常用方法
- 1.
range(start, stop, step)
:起始值默认为0,步长默认为1,所取列表不包括stop
- 2.
filter(function or None, iterable)
:将iterable
中的元素传入function
方法中,function
返回为True
的元素组成新的filter
对象(迭代器),若function
返回为None
,则将iterable
中为True
的元素组成新的filter
。与map()
有区别 - 3.
reduce(function, sequence, initial=None)
: 内置模块无需安装import functools from reduce
。将sequence序列中两个元素传入
五、匿名函数
lambda x:function
:x
表示变量:
后为函数返回值,其结果可直接赋值给变量,再利用变量来调用该函数,获取结果- 匿名函数可作实参与返回值
- 匿名函数可作实参与返回值
sort(self, key=None, reverse=False)
:key
指定排序规则
六、作业
-
作业一
-
作业二
-
作业三