我正在开发一些并行的小型Python包,我的存储库组织如下:
|- root_folder
|- source_code_folder
|- package1
|- package2
|-...
|- test_folder
|- package1_test_folder
|- package1_test.py
其中root_folder
是存储库,source_code_folder
包含要在test_folder/packageX_test_folder
中包含的test.py
文件中导入和测试的包
我已经编写了以下几行代码,将来自任何test_folder/package1_test_folder/test.py
文件的source_code_folder
(不是永久性地)添加到路径中
if __name__ == '__main__':
def __import_pkgs():
# automatically add to the path the source_code_folder folder if it is not contained yet
THIS_PATH = os.getcwd().split('\\')
for i in range(THIS_PATH.index('root_folder'),len(THIS_PATH)-1): THIS_PATH.pop()
ROOT_PATH = '\\'.join(THIS_PATH)
PKG_PATH = ROOT_PATH + '\\source_code_folder\\'
if sys.path.count(PKG_PATH) == 0: sys.path.append(PKG_PATH)
return None
__import_pkgs()
但是,通过这种方式,此__import_pkgs()
函数仅适用于基于Windows的环境。
有没有办法让它独立于操作系统?有人有什么建议让它更高效/优雅吗
我建议使用“os.path”,如下所示:
使用
os.sep
获取路径分隔符,而不是显式使用正斜杠或反斜杠相关问题 更多 >
编程相关推荐