在子文件夹中导入多个python文件

时间:2019-05-02 13:11:11

标签: python

我想在子文件夹Loader中导入python文件sub1。我要导入的文件在同一子文件夹中导入另一个文件detector。但是,Loader给出以下错误:

  

ModuleNotFoundError:没有名为“检测器”的模块

我尝试在python和

中使用exec命令
import sub1.Loader

文件夹结构如下:

Project
    | 
    +-- File_for_loading_Loader.py
    | 
    +-- sub1
         |  
         +-- __init__.py
         +-- Loader.py
         +-- detector.py

有人可以帮忙吗?

修改

我现在使用:

    import subprocess
    subprocess.call(["python", "Loader.py"], cwd="sub1")

可以很好地完成技巧。不需要相对进口等。

2 个答案:

答案 0 :(得分:1)

由于您创建了sub1作为模块,因此必须始终像sub1.<module_name>一样从其中导入文件。

因此对您来说,它应该是from sub1.detector import detect_faces在您的加载程序中。

答案 1 :(得分:0)

您需要使用File_for_loading_Loader.pyimport sub1.Loader as abc中导入加载程序。

在Loader.py中,您需要使用import sub1.detector as xyz导入检测器。