第十章 Python 自定义模块及导入方法

系列文章目录

第一章 Python 基础知识
第二章 python 字符串处理
第三章 python 数据类型
第四章 python 运算符与流程控制
第五章 python 文件操作
第六章 python 函数
第七章 python 常用内建函数
第八章 python 类(面向对象编程)
第九章 python 异常处理
第十章 python 自定义模块及导入方法
第十一章 python 常用标准库
第十二章 python 正则表达式
第十三章 python 操作数据库



介绍

Python 的自定义模块是指用户根据需要编写的 Python 文件,该文件包含 Python 代码,可以被其他 Python 文件导入使用。模块是 Python 代码组织、复用和抽象的一种方式。一个模块可以包含函数、类和变量等定义,还可以包含可执行的代码。模块使得 Python 代码可维护性更强,也便于其他开发者理解和使用。

要创建一个自定义模块,你只需要创建一个以 .py 结尾的文件,比如 my_module.py。在这个文件中,你可以定义函数、类和变量,还可以编写可执行的代码块。模块中定义的函数和类可以被模块的其他部分调用,也可以被其他模块导入并调用。

自定义模块

一个较大的程序一般应分为若干个程序块,若干个程序块称为模块,每个模块用来实现一部分特定的功能。
这样做的目的是为了将代码有组织的存放一起,方便管理和重复应用

# 定义一个模块
# vim mymodule.py
name = "wang"
def count(a,b):
    result = a * b
    return f"{a}{b}的乘积是:{result}"

# 使用模块的方法:
# import <模块名称>
# from <模块名称> import <方法名>
# 注:模块名称即py文件名称

示例

# vim mymodule.py
name = "wang"
def count(a,b):
    result = a * b
    return f"{a}{b}的乘积是:{result}"

class Calc():
    def __init__(self,a,b):
        self.a = a
        self.b = b
    def count(self):
        return self.a * self .b

# vim de.py
# 使用模块的方法
import mymodule
# 调用变量
print(mymodule.name)
# 执行函数
print(mymodule.count(5,6))
# 执行类
calc = mymodule.Calc(5,6)
print(calc.count())

from mymodule import count # 导入单个的
# from mymodule import *   # 导入所有的
print(count(5,6))

在这里插入图片描述

_name_==“main” 作用

mymodule.py作为一个模块,我们希望保留末尾测试代码,既上面调用函数和类,但也不希望再导入模块的时候执行。该怎么办呢?
可以利用Python文件的一个内置属性__name__实现,如果直接运行Python文件,__name__的值是"main",如果import一个模块,那么模块的__name__的值是"文件名" 。

示例

# vim mymodule.py
print(__name__)
# vim de.py
# 使用模块的方法
import mymodule

在这里插入图片描述

# vim mymodule.py
if __name__ == "__main__":
    print("我再手动执行这个程序")
else:
    print("其他程序调用了我")
# vim de.py
# 使用模块的方法
import mymodule

在这里插入图片描述

模块帮助文档

我们知道,在定义函数或者类时,可以为其添加说明文档,以方便用户清楚的知道该函数或者类的功能。
自定义模块也不例外,也可以添加说明文档,与函数或类的添加方法相同,既只需在模块开头的位置定义一个字符串即可

_doc_

# vim mymodule.py
'''
这是一个统计的模块
提供了有以下几种使用方法:
变量
函数
类
'''
name = "wang"
def count(a,b):
    result = a * b
    return f"{a}{b}的乘积是:{result}"

class Calc():
    def __init__(self,a,b):
        self.a = a
        self.b = b
    def count(self):
        return self.a * self .b
if __name__ == "__main__":
    print("我再手动执行这个程序")
else:
    print("其他程序调用了我")
vim de.py
# 使用模块的方法
import mymodule

# 查看模块帮助
print(mymodule.__doc__)
# 调用变量
print(mymodule.name)
# 执行函数
print(mymodule.count(5,6))
# 执行类
calc = mymodule.Calc(5,6)
print(calc.count())

from mymodule import count # 导入单个的
# from mymodule import *   # 导入所有的
print(count(5,6))

在这里插入图片描述

import os
print(os.__doc__)

在这里插入图片描述

help

# 使用模块的方法
import mymodule
# 查看模块帮助
help(mymodule)

在这里插入图片描述


总结

以上就是今天学习的内容,本文仅仅简单学习了python自定义模块及导入使用。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XMYX-0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值