python基础 模块
模块
函数与模块的关系
一个模块中可以包含多个函数
在python中一个扩展名为.py的文件就是一个模块
使用模块的好处
方便其他程序和脚本的导入并使用
避免函数名和变量名冲突
提高代码的可维护性
提高代码的可重用性
自定义模块
创建模块
新建一个.py文件,名称尽量不要与Python自带的标准模块名称相同
导入模块
import 模块名 (as 别名) 导入模块中的所有
from 模块名 import 函数 导入模块中指定的一块
1 2 3 4 5 6 | import math print ( id (math)) print (math) print ( dir (math)) print (math.pi) print (math. pow ( 2 , 3 )) |
导入自己的模块
1 2 3 4 5 6 7 8 9 10 | def max (a, b): if a > = b: return a elif a < b: return b def min (a,b): if a> = b: return b elif a<b: return a |
1 2 | import calc print (calc. max ( 2 , 2 )) |
以主程序形式运行
在每隔模块的定义中都包括一个记录模块名称的变量__name__,程序可以检查该变量,以确定他们在哪个模块中执行,如果一个模块不是被导入到其他程序中执行,name他可能在解释器的顶级模块中执行,顶级模块的__name__变量的值为__main__
1 2 3 4 5 6 7 8 9 10 11 12 13 | def max (a, b): if a > = b: return a elif a < b: return b def min (a,b): if a> = b: return b elif a<b: return a if __name__ = = '__main__' : # 只有当calc是主程序时才会执行 print ( max ( 3 , 5 )) |
包
包是一个分层次的目录结构,它将一组功能相近的模块组织在一个目录下
作用:
代码规范
避免模块名称冲突
包与目录的区别
包含__init__.py文件的目录称为包
目录里通常不包含__init__.py文件
python常用的内置模块
模块名
|
描述
|
sys
|
与python解释器及其环境操作相关的标准库
|
time
|
提供与事件相关的各种函数的标准库
|
os
|
提供访问操作系统服务功能的标准库
|
calendar
|
提供与日期相关的各种函数的标准库
|
urllib
|
读取来自网上的数据标准库
|
json
|
用于使用json序列化和反序列化对象
|
re
|
用于在字符串中执行正则表达式匹配和替换
|
math
|
提供标准算术运算函数的标准库
|
decimal
|
用于进行精确控制运算精度、有效数位和四舍五入操作的十进制运算
|
logging
|
提供灵活的记录时间、错误、警告和调试信息等日志信息的功能
|
1 2 3 4 5 6 7 8 9 10 11 | # 模块 import sys print (sys.getsizeof( 274 )) print (sys.getsizeof( True )) import time print (time.time()) print (time.localtime(time.time())) import urllib print (urllib.request.urlopen( 'http://www.baidu.com' ).read()) |
第三方模块的安装与使用
可以通过cmd窗口安装,pip install 模块名
可以通过pycharm内的File->Settings ->Project -> Python Interpreter下载 


1 2 3 4 5 6 7 8 9 | # 第三方模块的导入与使用 import schedule import time def action(): print ( "哈哈" ) schedule.every( 3 ).seconds.do(action) while True : schedule.run_pending() time.sleep( 1 ) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报