Python 引用私有模块的问题
自有工具
-
有一些常用的命令和函数,做成了文件,比如
my_toolbox.py
。实现的都是一些常用功能,比如- 各种时间格式相互转换
- log 输出颜色
- json 格式化打印
- 系统语音、通知
- 打印带框标题
- 计时(含间隔)、计数
- request 含重试和返回校验等
- 总之就是一些常用函数和类,但是代码又有点长,不高兴每次都复制黏贴一遍的内容。
-
平时调用就是
from my_tool import *
。有些常用的导入也在这里面了,比如 os 、sys 、json 、re 等等。 -
其它嘛还有一些使用频度低的,就单独拆开了,比如 excel 整理排错格式化后丢出 json,或者 df 通过 win32com 生成 excel 文件之类的。
优点
- 平时写点小东西比较快速,不用一个个去 import,或者复制代码。
- 发现工具 bug 了,也可以统一修改,不用各处都去改动。
缺点
- 由于陆续地修改调整,可能部分函数没有向下兼容。
- 这个文件单独在外面,做 git 或者备份的时候,并不在项目内。
请问
-
所以考虑要不要分一下版本,然后项目引用的时候标注下版本。有点像写 requirements,标注依赖版本。或者每个项目里都把依赖的私有工具都复制一份进去。
-
如果是要分版本的话,实践中怎么处理比较好,想听听看大家的做法。