您如何构建 python 代码以避免长导入语句?

How do you structure python code to avoid long import statements?

示例目录结构和代码:

root/
├─ main.py
├─ library/
│  ├─ __init__.py
│  ├─ library_code.py
│  ├─ utilities/
│  │  ├─ __init__.py
│  │  ├─ utils_one.py
│  │  ├─ utils_two.py
# main.py

import library as lb
# lb.library_code is how you would access stuff
# library/__init__.py
import [library.]library_code
import [library.]utilities
# library.utilities.__init__.py
import [library.utilities.]utils_one
import [library.utilities.]utils_two

您将如何删除导入语句中 [这些方括号内] 的文本?

当然,做这种结构会导致这个不行:

# library/utilities/utils_one.py

import library.library_code

你几乎是对的。使用relative imports,例如:

# library.utilities.__init__.py
import .utils_one
import .utils_two

最简单的就是使用相对导入。例如在 utils_one.py 你可以做

from . import utils_two
from .utils_two import function_one

您还可以使用 .. 像使用文件系统一样提升层次结构