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即可。

相关推荐
benchmark_cc16 分钟前
策略临时需要一批股票的最新价格,先查行情还是先建股票池?——从量化策略执行逻辑看数据获取顺序
python·数据分析·pandas·量化交易·股票数据·quantdash
成为深度学习高手18 分钟前
XLinear:用一个轻量 MLP,带外生变量做长期时间序列预测
python·深度学习·时序数据库
啊吧怪不啊吧32 分钟前
LangChain之模型调用
python·langchain
溪语流沙34 分钟前
Django + Vue电商项目第001讲:开篇|注册登录加增删改查,那不是电商
redis·python·mysql·docker·typescript·django·vue
夜雪一千43 分钟前
如何使用BeautifulSoup库来提取HTML中的特定元素
python
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐:基于大数据的城市空气污染物浓度数据分析与可视化|毕业设计选题|计算机毕设|选题推荐|毕设指导|项目定制|源码|高质量项目
大数据·python·信息可视化·数据挖掘·数据分析·课程设计·数据可视化
程序员阿黄1 小时前
基于 Django 与 Vue 3 的智能实验室预约系统设计与实现
后端·python·mysql·django·vue·毕设
用户298698530141 小时前
Python 如何实现 Word 与 RTF 文档互转
后端·python·api
程序猿在线码字1 小时前
深度学习(一)
python·深度学习·神经网络·机器学习
打工仔折腾 AI1 小时前
用 Shell 脚本自动部署 mysqld_exporter 并接入 Prometheus 远程抓取
人工智能·后端·python·性能优化·ai agent 实战