python学习道路(day5note)(列表生成式,生成器,装饰器,常用模块)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习道路(day5note)(列表生成式,生成器,装饰器,常用模块)相关的知识,希望对你有一定的参考价值。

生成列表的方式
data = [1,2,3]  需求   每个数字加上1
# data = ( x*2 for x in range(5))
技术分享
print(data)
 
列表生成式
技术分享
技术分享
后面的I赋予加1操作,i+q只能放在前面
 
技术分享
加上三元运算可以
 
生成器 (惰性运算,算到哪个值就到哪个值,往后就不算了)就是一个推到行算法
技术分享
中括号叫做列表生成式,小括号叫做生成器
技术分享
从左到右执行  当我访问到后面的数时候,前面的就没了
技术分享
技术分享
这样也是可以取值的,从左到右
 
斐波拉契数列
技术分享
###
技术分享
###
 技术分享
技术分享
技术分享
技术分享
 
转为生成器
技术分享
加了yield 叫做生生成器,不加叫做函数。
技术分享
技术分享
####
技术分享
####互换值
 
 
 
 
并发
技术分享
技术分享
 
 
 
 
迭代器
技术分享
技术分享
技术分享
 
所有的生成器肯定是迭代器,但是迭代器不一定是生成器(iter方法认为一个迭代器就是迭代器,本质来讲是一回事)
生成迭代器的方法
技术分享
技术分享
 
技术分享
技术分享
 
 
装饰器
技术分享
 
 
导入模块路径
技术分享
第一个是导入模块
第二个是导入模块方法
 
获取上一级目录
技术分享
在获取上一级目录
技术分享
技术分享
技术分享
这一条加上就完全可以在任何目录下导入
 
标准模块
json序列化
技术分享
 
技术分享
技术分享
上面是序列化,避免了需要转化为字符串的
 
技术分享
上面是反序列化,避免了需要转化为字典的
 
技术分享
技术分享
 
 
 
pickle
技术分享
技术分享
上面是pickle序列化方法
 
技术分享
上面是pickle反序列化
 
json只能序列化一般的数据类型,但是复杂的类型就需要pickle,而且只能用于自己的语言
 
 
 
软件目录结构规范
项目Foo
Foo/
|-- bin/    可执行文件
|   |-- foo
|
|-- foo/  软件代码目录
|   |-- tests/  测试脚本
|   |   |-- __init__.py
|   |   |-- test_main.py
|   |
|   |-- __init__.py
|   |-- main.py    程序的主入口
|
|-- docs/  文档
|   |-- conf.py
|   |-- abc.rst
|
|-- setup.py  安装第三方库
|-- requirements.txt  第三方包
|-- README
 
 
关于readme
技术分享
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

以上是关于python学习道路(day5note)(列表生成式,生成器,装饰器,常用模块)的主要内容,如果未能解决你的问题,请参考以下文章

python学习---列表生成式

Python学习九:列表生成式

Python学习九:列表生成式

python学习进度9(列表生成式,生成器和迭代器)

Python学习笔记__3.3章 列表生成式

Python学习笔记 列表生成式_生成器