Python将函数放在没有.py文件的子包命名空间下

2024-06-10 22:04:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我认为这是一个与python包相关的简单问题,而我不知道关键字是什么,也没有在互联网上找到任何东西。标题可能不清楚,让我在下面举例说明

因此,我有一个习惯,在我自己的软件包中保留各种各样的功能,例如:

mytools
|---__init__.py
|---plt_cb_miscs.py
|---project_miscs.py
|---datum_conv.py

当然,作为Iimport mytools.project_miscs as pmisc,我可以调用pmisc.is_oddnumpmisc.read_logcsvpmisc.plot_allfig……等函数,这些函数在project_miscs.py中定义

现在,假设pmisc.plot_allfig的代码变得太大了。我想把它放在单独的.py文件中,同时把它放在名称空间project_XXX_misc

我正在考虑将project_misc制作成一个子包:

mytools
|---__init__.py
|---plt_cb_miscs.py
|---project_miscs
    |---__init__.py
    |---plot_allfig.py
    |---...
|---datum_conv.py

但是仍然有一些很小的函数,比如is_oddnum,我想将它们保存在一个相同的.py文件中,并从mytools.project_miscs.is_oddnum调用它们,而不将其分离到is_oddnum.py。有办法做到这一点吗?或者我应该放弃这个想法,创建另一个.py来将它们收集到目录project_miscs下吗


Tags: 函数pyprojectplotinitispltcb