AI
推荐
模板社区
专题
登录
免费注册
首页
思维导图
详情
函数
2020-09-12 20:52:52
22
举报
分享方式
免费使用
AI智能生成
python函数逻辑总结
python函数
模板推荐
作者其他创作
大纲/内容
函数的结构
def func():
函数的执行(调用)
函数名()
空间与取值
空间
局部作用域
局部名称空间
全局作用域
全局名称空间
内置名称空间
加载顺序
内置->全局->局部
取值顺序
就近原则即LEGB原则
global
1.在局部名称空间声明一个全局变量
def func():<br> global name<br> name = 'alex'<br>print(name)<br>func()<br>print(name)
2.在局部修改全局变量
nonlocal
1.不能操作全局变量
2.对外层函数的变量进性修改
闭包
什么是闭包?
1.存在嵌套函数中。
2.内存函数对外层函数非全局变量的使用。
闭包的好处
对于你 引用的自由变量不会在内存中消失,保证数据的安全。
什么是函数?
减少代码的重复性。
增强代码的可读性。
函数的返回值
没有return
返回None
return
return单个值
与单个值的数据类型相同
return多个值1,'alex',[1,2,3]
(1,'alex',[1,2,3])
函数的参数
形参
1.位置参数:从左至右一一对应
2.默认参数:传值覆盖,不传则默认。
3.万能参数:*args, **kwargs
4.仅限关键字参数:*args,仅限关键字参数,**kwargs
形参角度的顺序:位置参数,*args,默认参数,仅限关键字参数,**kwargs
实参
1.位置参数:从左至右一一对应
2.关键字参数:一一对应
3.混合参数(位置参数,关键字参数):位置参数一定要在前面,一一对应。
* 的魔性用法
函数的定义:*代表聚合。
函数的执行:*代表打散。
函数的嵌套
遇到函数名()执行该函数
函数名的应用
1.函数名就是变量。
2.函数名对应的是函数的内存地址。
3.函数名可以作为容器类型的元素。
4.函数名可以作为函数的参数传递。
5.函数名可以作为函数的返回值。
函数的三大器
迭代
迭代器
字面意思:重复的更新迭代的工具。
专业角度:内部含有__iter__并且含有__next__方法。
优点:
1.节省内存。
2.惰性机制。
3.不走回头路。
缺点:
操作方法较少,不直观,查询速度较慢。
可迭代对象
字面意思:重复的更新迭代的数据。
专业角度:内部含有__iter__方法。
可迭代对象:str list tuple dict set range
优点:
直观。
操作方便。
缺点:
占用内存。
转化:iter(iterable).
生成器
本质就是迭代器。
唯一的不同:生成器是自己用python代码构建的。
生成器的三种产生方式:
生成器函数
函数中含有yield()就是生成器函数。
生成器表达式
循环模式:(变量(加工后的变量) for 变量 in iterable)
筛选模式:(变量(加工后的变量) for 变量 in iterable if 条件)
python提供的
列表推导式
循环模式:[变量(加工后的变量) for 变量 in iterable]
筛选模式:[变量(加工后的变量) for 变量 in iterable if 条件]
装饰器
本质就是闭包,在不改变原函数的代码以及调用方式下,给其增加新的额外的功能。
满足开放封闭原则。
应用:登录认证,打印日志等等。
基本结构:
def wrapper(f):<br> def inner(*args, **kwargs):<br> ret = f(*args, **kwargs)<br> return ret<br> return inner
内置函数
pass
收藏
立即使用
函数
sober
职业:暂无
去主页
Collect
Get Started
C语言函数
Collect
Get Started
C语言输入输出函数
Collect
Get Started
函数及其图像
Collect
Get Started
函数库
评论
0
条评论
下一页
图形选择
思维导图
主题
补充说明
AI生成
修改AI描述
去编辑
重新生成
提示
关闭后当前内容将不会保存,是否继续?
取消
确定
Document