如何设计一个好的模块结构,使导入不会令人讨厌?

时间:2018-10-25 08:05:28

标签: python python-2.7

我目前在我的框架中遇到一种情况,如果我想导入一个API,我的导入看起来很可怕。

结构如下:

|- main.py
|- Scripts
|  |- dir_1
|     |- script_1.py
|  |- dir_2
|     |- script_2.py
|- Utilities
   |- api_dir
      |- base_dir
      |  |- base_class.py
      |- specific_dir
      |  |- specific_class.py
      |- api.py

FWK当前的编写方式是,当Scripts目录中的脚本需要使用Utilities之一时,导入必须看起来像这样:

import Utilities.api_dir.api

我想做的是这样的:

import api

我知道我可以将每个api_dir附加到sys.path中,但是我想知道是否有更干净的方法来做类似的事情?

在这种情况下,我也想了解有关命名约定的信息。我应该如何调用我的api.py以及应如何调用目录api_dir

如果我将api.py命名为some_specific_functionality.pyapi_dir some_specific_functionality,那么当前导入的内容将类似于以下内容:

import Utilities.some_specific_functionality.some_specific_functionality 

我想避免这种情况。

0 个答案:

没有答案