我正在绑定我的python包中的目录结构的命名。问题是我正在调用包与包含源代码和主类的目录相同的名称。像这样:
```
Bucha
\ docs
| examples
| bucha
\ class1.py
| class2.py
| bucha.py (which contains a class Bucha)
| tests
```
我已经完成了本地pip安装,所以当我想要实例化Bucha时,我必须像这样导入
from bucha.bucha import Bucha
这当然是荒谬的。
有关改进此命名的任何建议吗?对此有一个鼓励指南吗?
答案 0 :(得分:1)
您可以将__init__.py
添加到导入内容的文件夹中。
例如,我这样做了:
$ mkdir -p bucha/bucha
$ touch bucha/bucha/Bucha.py
$ subl .
$ touch bucha/bucha/__init__.py
$ touch bucha/__init__.py
$ touch __init__.py
$ python -c 'import bucha'
bucha/bucha/__init__.py
bucha/bucha/Bucha.py
bucha/__init__.py
这些是文件的内容:
$ cat bucha/bucha/Bucha.py
print(__file__)
$ cat bucha/bucha/__init__.py
print(__file__)$
$ cat bucha/__init__.py
import bucha.Bucha as Bucha
print(__file__)
$ cat __init__.py
from bucha import Bucha
print(__file__)