第14节-模块+生成器/迭代器+列表推导式

一、模块简介

模块化:指将一个完整的程序分解成一个个的小模块,通过将模块组合,来搭建出一个完整的程序

优点:方便开发、维护,可以复用

二、 模块的创建

在Python当中一个py文件就是一个模块
在一个模块中引入外部模块的语法: import 模块名(模块名就是py文件) / import 模块名 as 模块别名
可以引入同一个模块多次,但是模块的实例只会创建一次

在一个模块内部都有一个__name__,通过它我们可以获取模块的名字
如果py文件直接运行时,那么__name__默认等于字符串__main__
__name__属性值为__main__的模块是主模块,一个程序中只有一个主模块

(注意:if _ name _ =’_ main _'为主程序的入口,如果不启动则函数不会执行,且只能在原模块中启动,无法在引入的模块中启动)

(1)创建2个py文件module1.py和module2.py
在这里插入图片描述
在这里插入图片描述

(2)创建1个module3.py文件,将module1.py和module2.py作为模块引入,将py文件设置为同一个根目录下
在这里插入图片描述
也可以通过路径进行导入:import module.module2
(3)引入,相当于将原模块复制到本模块(模块内入口程序部分未执行
在这里插入图片描述
注意:
print (_ name )在module2中显示为__main_,在module3中显示为module2
module2中的fn1()和fn2()并未执行
(4)也可以放到同一行中引入
在这里插入图片描述

三、模块的使用

访问模块中的变量, 语法是: 模块名.变量名
访问模块中的函数, 语法是: 模块名.函数名
访问模块中的对象, 语法是: 模块名.对象名
我们也可以引入模块中部分内容, 语法是: from 模块名 import 变量,变量…
还有一种引入方式,语法是: from 模块名 import 变量 as 别名
(1)新定义一个模块module2
在这里插入图片描述
(2)可采用不同方法导入,即可以整个模块导入,也可以只导入模块中的部分对象
在这里插入图片描述

四、列表推导式

语法: [变量/表达式 for 变量 in 列表 if 条件]
在这里插入图片描述

五、生成器

生成器 :在python中有一边循环一边计算的机制,称之为生成器
next方法、列表表达式:均可获取生成器里面的元素

方式一 :通过列表推导式创建生成器
在这里插入图片描述
方式二:通过yield创建生成器
语法:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

六、迭代器

生成器是一个特殊的迭代器
在这里插入图片描述
• 可迭代对象:能用for循环遍历的都是可迭代对象,字符串、列表、元组、集合等容器都是可迭代对象
• 可迭代对象拥有__iter__方法,即返回自身的方法
• 迭代器:可以被next函数调用并不断返回下一个值的对象成为迭代器:Iterator
在这里插入图片描述

迭代器的创建:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值