繁体   English   中英

如何在 python 中导入没有子模块命名空间的部分属性/变量?

[英]How to import partial attributes/variables without namespace of submodules in python?

package 树

.
└── a
    ├── b
    │   ├── fun.py
    │   └── __init__.py
    └── __init__.py

a/__init__.py内容

from .b import  fun

a/b/__init__.py

from .fun import  fun

a/b/fun.py内容

def fun:
    print(111)

我只是运行ipython ,然后运行

In [1]: import a                                                                                                                                                                                              

In [2]: dir(a)                                                                                                                                                                                                
Out[2]: 
['__builtins__',
 '__cached__',
 '__doc__',
 '__file__',
 '__loader__',
 '__name__',
 '__package__',
 '__path__',
 '__spec__',
 'b',
 'fun']

In [3]:     

问题

问题是我不想在a的目录中使用'b'。 我希望 package 只是导出“有趣”。

修改a/__init__.py如下:

from .b import  fun
del(b)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM