python导包机制-更优方式

在学习某个大模型应用的后端时,发现:

shell 复制代码
xxx
|-----src
|------\---modules
|------\------\------b.py
|-----app.py

app.py中可以使用src.modules.b来进行导入。之前我导入时是形如.modules.b这种形式(前面有.),但是当导入的是上上级目录中的文件时异常难以导入。

经过不断了解,才发现之前我导入的方式不够好。上述导包方式使得用python开发更像是在进行主流的前后端开发,心智负担很小,开发更加便捷。

本文对上述导包方式进行记录,防止之后再犯蠢。

包是存放多个模块的目录。在python3.3之前需要显示声明__init__.py文件,之后版本不强制要求声明。

导包

目录和各文件如下:

使用python app.py即可运行程序。

测试

由于导包原因,如果要对src/modules/call.py进行测试,不能直接进入对应目录,运行python call.py进行测试。

会提示没有模块src

-m参数可以使我们在根目录下直接进行测试,使用python -m src.modules.call即可。

相关推荐
jay神11 分钟前
【计算机毕业设计】基于Flask+Vue的电影数据可视化与智能推荐系统
前端·vue.js·python·信息可视化·flask·毕业设计·课程设计
满怀冰雪1 小时前
24-PaddleClas 模型评估、导出与推理部署入门
大数据·人工智能·python·深度学习·paddle
DeepVisionary7 小时前
谷歌 Gemini Omni 1.1 Flash 正式发布:4K 视频、40 秒场景延伸,视频生成进入按 token 计费时代
python·自动化
阡之尘埃7 小时前
Python数据分析案例85——大模型微调全流程(SFT的LoRA微调)
人工智能·python·深度学习·语言模型·llm·微调·千问
海兰7 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
cvcode_study7 小时前
Ollama+ComfyUI 多模态
大数据·人工智能·python
星核0penstarry9 小时前
试一试用gr.Workflow把AI多步骤串联变成可视化画布
人工智能·python·ai作画·api·ai编程·工作流·api聚合平台
taller_20009 小时前
【005】PiE 与传统 VBA 的核心区别
python·vba·pie·py
海兰9 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(一)
javascript·python·金融
大衛說9 小时前
《Python 从入门到精通》系列总览与学习路线
开发语言·python·学习