在Python包中混合函数和子包

2024-06-02 19:32:14 发布

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

有没有办法在我的Python包中混合子包和函数?你知道吗

目前,我的布局大致如下:

lib/
   __init__.py
   Transform.py
   Statistic.py

其中Transform.pyStatistic.py分别包含多个函数。为了使用它们,我做了一些

from lib import Transform

Transform.fft(signal);

现在我希望能够在Transform内的包中有一个函数:

from lib.Transform import bins

Transform.bins.extent(signal);

这有可能吗?我必须如何定义我的包才能做到这一点?你知道吗


Tags: 函数frompyimportfftsignal定义init
1条回答
网友
1楼 · 发布于 2024-06-02 19:32:14

解决方案#1:尝试以下布局:

lib/
  __init__.py
  Statistic.py
  Transform
    __init__.py
    bins.py

在这种情况下,Transform.fft进入lib/Transform/__init__.py内部,Transform.bins.extent进入lib/Transform/bins.py

解决方案#2:如果希望保持__init__.py简洁,还可以创建一个单独的Python模块(如fft.py),并将其导入__init__.py,如下所示:

from fft import *

在这种情况下,您还可以使用:

from lib.Transform import fft

相关问题 更多 >