我打算有项目,结构如下:Python项目的合理设计
./runme.py
./my_modules/__init__.py
./my_modules/global_imports.py
./my_modules/user_defined_functions.py
的想法是很重要的变量在global_imports.py
从那里他们将被导入到使用from my_modules.global_imports import *
(runme.py
商店,我知道这是一个不好的做法,导入模块这种方式,但我承诺,将与不冲突的名字只是几个变量)
四个问题:
global_imports.py
中包含的两个变量应该是SCRIPT_PATH
和SCRIPT_DIR
。我试过SCRIPT_PATH = os.path.realpath(__file__)
和SCRIPT_DIR = os.path.dirname(SCRIPT_PATH)
,但它返回的路径(目录)为global_imports.py
而不是runme.py
。我如何获得runme.py
的路径(目录)?Inside
global_imports.py
我可能会导入模块,如os
和sys
。我还需要在runme.py
内导入这些模块。这是否被认为是问题,当模块首先从另一个模块导入,然后从主脚本导入时,反之亦然?是否可以将变量从
global_imports.py
导入user_defined_functions.py
?我认为这只是一个坏习惯,我只是好奇而已。是否有更好的方法将项目分成模块?