Python学习系列之模块化编程(二十九)
模块化编程
一、模块
1. 什么叫模块?
- 模块英文为Modules
2. 函数与模块的关系
- 一个模块中可以包含N多个函数
- 在Python中一个扩展名未.py的文件就是一个模块
3. 使用模块的好处
- 方便其它程序和脚本的导入并使用
- 避免函数名和变量名冲突
- 提高代码的可维护性
- 提高代码的可重用性
二、 自定义模块
1. 创建模块
新建一个.py文件,名称尽量不要与Python自带的标准模块名称相同
2. 导入模块
格式1:import 模块名称 [as 别名]
1 2 3 4 5 6 7 8 | '''模块的导入''' import math #导入math模块 print (math) print (math.pi) print ( dir (math)) print (math. pow ( 2 , 3 ), type (math. pow ( 2 , 3 ))) #计算2的3次方,值为8.0,float类型 print (math.ceil( 9.001 )) #9.001的天花板,即向上取整,值为10 print (math.floor( 9.99 )) ##9.99的地板,即向下取整,值为9 |
执行结果:
格式2:from 模块名称 import 函数/变量/类
1 2 3 4 | from math import pi #从math模块导入pi方法 print (pi) print ( pow ( 2 , 3 )) print (math. pow ( 2 , 3 )) #会报错,因为pow方法没有被导入,使用的是python自带的pow方法 |
上面代码最后一句会报错,如下图:
因为只从math模块中导入了pi方法,并没有导入pow方法,所以会报错,需要在导入处加入import math才不会报错,即导入math整个模块(包括paw方法) ,正确代码如下:
1 2 3 4 5 | from math import pi #从math模块导入pi方法 import math print (pi) print ( pow ( 2 , 3 )) print (math. pow ( 2 , 3 )) |
自定义模块calc,里面定义一个加法和一个除法,代码如下:
1 2 3 4 5 | def add(a,b): return a + b def div(a,b): return a / b |
新建另外一个模块,然后导入自定义模块,如果直接import自定义的类模块calc,则会报错,如下图,因为这里导入的是Python自带的模块,非用户自定义模块
如果要导入自定义模块,则需要右键当前目录文件夹,选择Mark Directory as -> Source Root,然后就可以调用自定义的类calcdemo里的方法了
执行结果如下:
如果只想导入calcdemo的add方法,代码如下:
1 2 3 | '''如果只想导入calcdemo的add方法''' from calcdemo import add print (calcdemo.add( 10 , 30 )) |
执行结果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
2020-03-25 大厂一面面试题合集
2020-03-25 自动化面试selenium 面试题及答案