Python高级之模块化(Python系列22)

前言:为什么要使用模块化,模块化有什么好处,什么时候使用模块化,我们一起来看看吧。

1.导入模块的两种方式

# 第一种 import ...
import common.exercise01
# 调用
common.exercise01.func01()
# 也可以设置一个别名
import common.exercise01 as ex
ex.func01()


# 第二种 from ... import ...
# 导入一个模块中的某个方法
from exercise01 import func01
# 调用
func01()
# 导入一个模块中的所有方法
from exercise01 import *
# 调用
func01()
func02()
# 导入指定文件夹中一个模块的一个方法
from common.exercise01 import func01
# 调用
func03()

        当面向对象编程的时候推荐使用from import进行导入

        当面向过程编程的时候推荐使用import

 值得一提的是,当一个文件导入一个模块,并在当前文件运行时,先需要执行第一行的导入,也就是说需要将导入模块从头到尾执行完才返回当前文件继续执行。 

2.模块化变量

        模块化变量:__name__

        使用:

# exercise01文件夹,并在该文件夹中运行
print(__name__)  # __main__

         结论:在当前文件夹运行该文件,打印的模块变量为__main__

        使用:

# exercise01.py 文件中
# 在此文件夹中运行
import exercise02
print(__name__)  # __main__

# exercise02.py 文件中
# 被导入运行
print(__name__)  # exercise02

        结论:当一个模块被导入时 ,该模块的模块变量__name__为该模块的模块名

        常用:

        1.常用在主模块main中,if __name__ == "__main__":   用来防止主模块被调用时程序也会执行。

        2.当在一个模块中测试该模块功能时可以使用 if __name__ == "__main__",不需要注释,也不需要删除。

3.模块的分类

1.内置模块 python解释器中存在,如print(), str(), int()等

2.标准库模块 下载python时自带的模块,需要导入如 random , time等

3.第三方模块 需要自己去下载然后导入使用的,如requests

4.自己编写的模块  自己写的,需要导入使用,如上面代码中的exercise02模块。

4.python程序完整结构

5.模块化的优势

        增加代码的可读性,被导入的文件会生成pyc文件,增加性能。

        易于维护和可扩展性,增强复用性。

相关推荐

  1. OpenCV-Python(22):直方图均衡

    2023-12-15 11:42:06       59 阅读
  2. Python模块logging

    2023-12-15 11:42:06       96 阅读
  3. 20高级 Python 装饰器

    2023-12-15 11:42:06       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-15 11:42:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-15 11:42:06       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-15 11:42:06       82 阅读
  4. Python语言-面向对象

    2023-12-15 11:42:06       91 阅读

热门阅读

  1. electron这样使用更安全

    2023-12-15 11:42:06       94 阅读
  2. Qt插件开发与QPluginLoader的使用

    2023-12-15 11:42:06       55 阅读
  3. 安卓10 flutter webview 回退会闪退

    2023-12-15 11:42:06       67 阅读
  4. 数据结构:第9关:删除链表中满足区间值的结点

    2023-12-15 11:42:06       67 阅读
  5. 【无标题】

    2023-12-15 11:42:06       51 阅读
  6. 逻辑回归的损失函数和目标函数

    2023-12-15 11:42:06       48 阅读