Python入门学习 DAY15 模块

Python入门     

DAY 15

今日内容:模块

1.什么是模块

模块就是一系列的功能的集合体

模块的3种来源:1.内置的模块(os,sys,time)   2.第三方的模块(别人编写好的一些功能)   3.自定义模块

模块格式:1.使用python编写的.py文件  

                2.已被编译为共享库或DLL的c或c++扩展

                3.把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包)

                4.使用c编写并链接到python解释器的内置模块

2.为什么要用模块

        1.使用内置模块和第三方模块的好处是:拿来主义,可以极大提升开发效率

        2.使用自定义模块的好处:可以减少代码冗余(将程序中一些公用的功能定义成模块,然后程序各部分组件课可以去模块中调用该功能)

3.如何用模块

大前提:一定要区分开谁是执行文件,谁是被导入模块

模块的两种使用方式,首先编写一个spam.py文件放入一些功能,这便是一个自定义模块

run.py为执行文件

方式一:在执行文件中访问模块名称空间中名字的语法:模块名.名字    列: import spam 即可调用模块spam

import导入模块:在使用时必须加上前缀:模块名.  列:我要用spam的功能(假设模块有功能func1,func2...)

调用时就要跟模块名  spam.func1()      spam.func2()   如此去调用
优点: 指名道姓地向某一个名称空间要名字,肯定不会与当前名称空间中的名字冲突(有可能执行文件也会有func1这种变量名,前面加入模块名就不会产生冲突)
缺点: 但凡应用模块中的名字都需要加前缀,不够简洁

首次导入模块发生的件事
1. 会产生一个模块的名称空间
2. 执行文件spam.py,将执行过程中产生的名字都放到模块的名称空间中
3. 在当前执行文件的名称空间中拿到一个模块名,该名字指向模块的名称空间

方式二:在执行文件中访问模块名称空间中名字的语法    列: from spam import func1,func2... 即可调用模块spam中的部分功能

直接func1()即可调用

总结:from...import...方式
优点: 使用时,无需再加前缀,更简洁
缺点: 容易与当前名称空间中的名字冲突

首次导入模块发生3件事
1. 创建一个模块的名称空间
2. 执行文件spam.py,将执行过程中产生的名字都放到模块的名称空间中
3. 在当前执行文件中直接拿到一个名字,该名字就是执行模块中相对应的名字的

以上为本次学习内容

猜你喜欢

转载自blog.csdn.net/sql121407/article/details/81486377