从子文件夹导入模块时出现问题

时间:2019-06-04 08:07:37

标签: python

我从子文件夹导入模块时遇到问题。 我正在从目录C:\Users\yeosiz\Desktop\bert_on_stilts运行主代码。文件夹glue在上述目录中,我的主要代码是在tasks.py文件夹中调用glue。我想从get_task导入MnliMismatchedProcessortasks.py

目录的结构:

bert_on_stilts
|_ main.py 
|_ glue
    |_tasks.py

代码如下:

import sys
sys.path.insert(0, 'C:/Users/yeosiz/Desktop/bert_on_stilts/glue')
from glue.tasks import get_task, MnliMismatchedProcesso

但是我收到此错误ModuleNotFoundError: No module named 'glue.tasks'。 我正在使用python 3.6。此外,__init__文件夹中有glue

我检查了以下链接以找到解决方法,但我无法解决问题 Python 3 import class from subfolder problemImport module from subfolderimport main file (not another module) from a subfolder

2 个答案:

答案 0 :(得分:0)

只需使用:

from tasks import get_task, MnliMismatchedProcesso

或使用:

sys.path.insert(0, 'C:/Users/yeosiz/Desktop/bert_on_stilts')

否则,胶水会加倍。

答案 1 :(得分:0)

您需要以相对点符号开始导入,这样就可以了

from .glue.tasks import get_task, MnliMismatchedProcesso