python模块
什么是模块
为什么有模块
怎么使用模块
模块的定义
模块被引用时的执行步骤
import foo
执行foo.py- 产生foo.py的名称空间,将foo.py运行过程中产生的名字都丢到foo的名称空间中
- 在当前文件中产生的有一个名字foo,该名字指向2中产生的名称空间
- 之后的导入,都是直接引用首次导入产生的foo.py名称空间,不会重复执行代码
模块的引用
2、引用:
print(foo.x)
print(foo.get)
print(foo.change)
强调1:模块名.名字,是指名道姓地问某一个模块要名字对应的值,不会与当前名称空间中的名字发生冲突
x=1111111111111
print(x)
print(foo.x)
强调2:无论是查看还是修改操作的都是模块本身,与调用位置无关
import foo
x=3333333333
# foo.get()
foo.change()
print(x)
print(foo.x)
foo.get()
3、可以以逗号为分隔符在一行导入多个模块
建议如下所示导入多个模块
import time
import foo
import m
不建议在一行同时导入多个模块
import time,foo,m
- 导入模块的规范
- python内置模块
- 第三方模块
- 程序员自定义模块
# import time
# import sys
#
# import 第三方1
# import 第三方2
#
# import 自定义模块1
# import 自定义模块2
# import 自定义模块3
import 。。。 as 。。。
import foo as f # f=foo
f.get()
import abcdefgadfadfas
#
# abcdefgadfadfas.f1
# abcdefgadfadfas.f2
# abcdefgadfadfas.f3
import abcdefgadfadfas as mmm
mmm.f1
mmm.f2
mmm.f3
- 模块是第一类对象
import foo - 自定义模块的命名应该采用纯小写+下划线的风格
- 可以在函数内导入模块
def func():
import foo
import
from x import b
from a import b
from a import b,c,d
from a import *
循环引用
模块的查找优先级
内存(内置模块)>硬盘(按照sys.path中的文件路径查找)
sys.modules查看已经加载到内存中模块
sys.path.append(path)将模块文件夹路径添加到环境变量中
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署