Python知识点17---包

提前说一点:如果你是专注于Python开发,那么本系列知识点只是带你入个门再详细的开发点就要去看其他资料了,而如果你和作者一样只是操作其他技术的Python API那就足够了。

Python的包,你可以把它看成是一个大的模块,它的本质是一个文件夹,所有有联系的模块都可以单独打成一个包,且在包生成的时候,包中会生成一个名字叫__init__.py的文件,这个文件规定了其他模块导入这个包时的导入行为

那么如何建立包呢?你如果使用的是PyCharm,你可以根据下面的步骤进行创建

1、在项目空白处,右键单击new--》Python Package

2、输入名字

3、点击OK之后,创建成功,并自动生成__init__文件


之后你就可以在包下如往常一样写代码了,当你要在其他模块中导入这个包中的模块的时候有两种方式

方式一:

python 复制代码
import 包名.模块名

#使用的时候要注意如果没起别名你要带上包名的
包名.模块名.功能名

方式二:

方式二就要用到之前的__init__.py文件了,我们需要在这个文件中定义__all__列表,不知道这个列表干什么的,可以去看一下知识点16

python 复制代码
from 包名 import *

#这种方法你就可以不写包名了
模块名.功能名

其实第二种方式,我是为了强调init文件的用处,你如果不用星号导入,那就用不着改init文件

相关推荐
华科大胡子1 天前
Chrome安全机制深度解析
python
易标AI1 天前
标书智能体(四)——提示词顺序优化,让缓存命中,输入成本直降10倍
人工智能·python·提示词·智能体·招投标
深耕AI1 天前
【VS Code 中 Python 虚拟环境降级完整指南(含 uv 工具实战)】
开发语言·python·uv
→长歌1 天前
2026Java面试30题精解
java·python·面试
Bert.Cai1 天前
pymysql自动提交设置
开发语言·python
吃一根烤肠1 天前
Python调试革命:用ChatGPT Copilot快速定位复杂bug
python·chatgpt·copilot
小白学大数据1 天前
攻克滑动拼图反爬:Python 高效爬取网页图片实战案例
开发语言·爬虫·python
阿荻在肝了1 天前
Agent学习四:RAG 技术应用
python·学习·agent
ZC跨境爬虫1 天前
Base64编码详解(含JS_Python实现+实战逆向案例)
前端·javascript·python
小陈工1 天前
Python Web开发入门(八):用户认证系统实现,给你的应用加上安全锁
开发语言·前端·数据库·python·安全·django·sqlite