python(模块和包的总结)

1. 定义

Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。
模块让你能够有逻辑地组织你的 Python 代码段。
把相关的代码分配到一个模块里能让你的代码更好用,更易懂。
模块能定义函数,类和变量,模块里也能包含可执行的代码。
包括:内置模块,自定义模块,第三方模块;
什么是模块(python--核心概念)
    1.每一个以扩展名.py结尾的python源代码都是一个模块
    2.模块就好比是工具包,要想使用这个工具包中的工具,就先导入这个模块
    3.在模块中定义的全局变量,函数,类 都是提供给外界直接使用的工具
    4.变量名/函数名/类名/方法名(标示符) 需要符合标示符号的命名规格

2.作用

- 最大的好处是大大提高了代码的可维护性。其次,编写代码不必从零开始。
当一个模块编写完毕,就可以被其他地方引用。我们在编写程序的时候,也经常引用其他模块,
包括Python内置的模块和来自第三方的模块。

- 使用模块还可以避免函数名和变量名冲突。
相同名字的函数和变量完全可以分别存在不同的模块中,
因此,我们自己在编写模块时,不必考虑名字会与其他模块冲突。
但是也要注意,尽量不要与内置函数名字冲突。

3. 模块导入

# import
import导入模块执行的操作:
- 产生一个新的名称空间;
- 在新建的名称空间俩面执行模块(.py)的内容
- 拿到了一个模块名, 执行模块文件产生的名称空间.
# import .... as ...
对于导入的模块重命名
# from .... import ....
from .... import ..... as ....
从模块里面导入函数, 变量, 装饰器等.....

4. 解决问题

问题:
# 导入模块时, 模块里面执行代码结果也会显示
解决方法:
    __name__, 所在文件没有当作模块导入时, 结果为__main__;
    __name__, 所在文件被当作模块导入时, 结果为模块的名称;
# 判断模块是否被导入, 如果没有被导入, 则执行下面的代码.
if __name__ == "__main__":
    print("这是写好的模块里面的显示.......")
    print(timeit(hello))
    print(__name__)

5.控制导入的内容

__all__决定用来控制from xxx import *导入的内容

6. 模块的分类

- 内置模块(random, string.....)
- 自定义模块(自己写的模块)
- 第三方模块(别人写好的模块)

7. 如何安装第三方模块

- pip3 install 模块名

你可能感兴趣的:(python(模块和包的总结))