#Python学习笔记(day10)——迭代器与生成器+模块的导入

生成器generator:

可将函数分段执行,即执行一段操作后退出函数或者挂起函数,等需要用到时在之前挂起位置继续调用函数

关键词是yield,yield相当于return返回一个值,下一次调用函数的时候从上一个yield开始。

生成器算是一种特殊的迭代器,所以可以应用for循环自动调用next()函数和读取StopIteration

 

导入模块的三种方式:

1、import+文件名

导入整个模块,调用该模块中的函数时需要声明命名空间

譬如导入 hi.py:

 import hi

hi.f()

2、import +文件名 + as +别名

克服了重名或者文件名过长的缺点

譬如:

import hi as h:

h.f()

3、from + 文件名 +  import +函数名(类名)

单纯导入一个函数,调用函数时不用声明命名空间

不用声明命名空间但是容易使函数名混乱,推荐第二种方式

from hi import f

f()

4、模块中的 if __name__ == ' __main__'

通常其后面的代码用来检验模块是否能正常运行。__name__用来获取该模块在代码运行中的“地位”,如果该程序作为主程序运行,则会返回" __main__"。如果作为一个被导入的模块,则会返回这个程序的文件名。

5、导入模块的搜索过程

在导入一个模块时,系统会在预定义下的目录搜索该模块。预定的路径包括一个当前程序运行的路径和6个系统默认路径。若想要指定搜索路径需要在sys.path中添加路径。sys,path返回一个列表,所以用列表添加元素的方法就可以实现。

 

 

补充:

__all__可以查看模块的外部接口,from sth import *导入的便是全部外部接口

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值