可以检测python是执行模块导入还是尝试执行模块导入?

时间:2020-06-03 19:11:57

标签: python python-module python-packaging

我正在尝试重组一个旧的python程序包,该程序包的__init__.py中包含一些代码,我想:

  • 有人from mypackage import Foo时发出弃用警告
  • 在有人python -m mypackage时避免过时警告

该软件包可以通过其__main__.py执行,但是在打开__main__文件时,python已经加载了__init__文件。

是否可以检测到此情况并将条件添加到__init__.py中?

目标是弃用所有历史代码形式的init并将其移至模块中,但是我试图避免破坏使用者并给他们时间来迁移其导入。

我应该强调文字,指出所支持的python的最低版本为py36。

0 个答案:

没有答案