我有一个我将分发的项目,它将包含几个子包。一个用于清理数据,一个用于转换数据,另一个用于计算某些统计信息。我想避免使用3个config.py文件,我可以将config.py文件放在顶层吗?例如,而不是这样做:
MyPackage
|
├──mypackage
| |
| ├── __init__.py
| |
| ├── data_clean
| | ├── __init__.py
| | ├── config.py
| | └── f1.py
| |
| ├── data_transform
| | ├── __init__.py
| | ├── config.py
| | └── g1.py
| |
| └── stat_calc
| ├── __init__.py
| ├── config.py
| ├── s1.py
| └── command_line_interface.py # <- users will use this from cmd.exe
|
├── README.txt
|
└── setup.py
我想:
MyPackage
|
├──mypackage
| |
| ├── __init__.py
| |
| ├── config.py # <---- put all 3 config.py stuff into here
| |
| ├── data_clean
| | ├── __init__.py
| | └── f1.py
| |
| ├── data_transform
| | ├── __init__.py
| | └── g1.py
| |
| └── stat_calc
| ├── __init__.py
| ├── s1.py
| └── command_line_interface.py # <- users will use this from cmd.exe
|
├── README.txt
|
└── setup.py
这是否有意义,这是pythonic /正确吗?
答案 0 :(得分:1)
假设您的模块将存储在PYTHONPATH中,答案是肯定的。只需导入它:
来自MyPackage导入配置