2020-06-17→Python基础课第十四节_模块

一、模块的简介

  • 模块化指将⼀个完整的程序分解成⼀个个的⼩模块,通过将模块组合,来搭建出⼀个完整的程序。
  • 模块化的优点:
    1、方便开发与维护;
    2、提高程序的复用性!

二、模块的创建

  • 在Python当中⼀个py⽂件就是⼀个模块,在⼀个模块中引⼊外部模块:
    1、import 模块名(模块名就是py⽂件) ,注意py文件要和执行的模块文件要在同一个文件夹下!
    eg.
    image.png
image.png

由上图可知,直接打印模块名可得到其路径!

  • 可以引⼊同⼀个模块多次,但是模块的实例只会创建执行⼀次!

2、import+模块名+as+模块别名
eg.

image.png

  • 在每⼀个模块内部都有⼀个__name__,通过它我们可以获取模块的名字!
    如果模块(py⽂件)直接运⾏时,那么__name__默认等于字符串'__main__',表示当前文件为主文件!即当__name__=='__main__'时表示此时运行的模块为主文件,或者叫主文件入口!
    eg.
    image.png

__name__属性值为__main__的模块是主模块。⼀个程序中只有⼀个主模块!

三、模块的使用

3.1 访问模块中的变量

语法:模块名.变量名
eg.

image.png

3.2 访问模块中的函数

语法:模块名.函数名
eg.

image.png

3.3 访问模块中的对象

语法:模块名.对象名

3.4 访问模块中的部分内容

1、语法:from+模块名+import+变量1,变量2,变量3...
eg.

image.png

2、语法:from+模块名+import+*
eg.

image.png

由上图可知,主模块的fx函数会被覆盖!由此引入下一种方法:

3、语法:from+模块名+import+变量+as+别名
eg.

image.png

PS:
1、数据不可能完全私有,所以看到绿色的波浪线时,要去引用的模块种看下程序!

image.png

_c是被封装的变量!

2、子模块中的测试代码不希望在主模块中运行,则可以在子模块中使用到:

if __name__=='__main__':  ### 主文件入口

防止主模块执行这段子模块中的测试代码!
eg.


image.png

四、迭代器&生成器

4.1 迭代器

  • 访问元素的一种方式(即需要遍历),是可以记住遍历位置的对象(元素)。迭代器也是从序列中的第一个元素访问,直到所有的元素被访问完结束!
    方法:iter() next()
    eg.


    image.png
image.png

停止迭代!

标准:


image.png

4.2 生成器

  • 在Python中使用yield这个关键字我们称之为生成器或者生成器函数!
  • 生成器和普通函数的区别:生成器返回的是一个迭代器的函数,只用于迭代作用!
    语法:
    yield+变量
    next(变量)
    即在当前位置继续访问!!!同时注意打印时的先后顺序,与return有区别!!!
    eg.
    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。