我试图从不同的目录级别导入模块,因此我使用了:
import os
import sys
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
但现在我收到了这个错误。我使用Spyder并且第一次使用以下导入时,它工作正常。
from source.search.ci_search_project import CI_Search_Project
从第二次出现此错误。
文件" ipython-input-29-f35dfe634c32",第1行,在模块中 runfile(' C:/Users/nrshakya/Documents/CI/src/Comp_IntelPython/ci_search_project_test.py' ;, wdir =' C:/ Users / nrshakya / Documents / CI / src / Comp_IntelPython&#39 ;)
文件" C:\ Users \ nrshakya \ AppData \ Local \ Continuum \ Anaconda3 \ lib \ site-packages \ spyder \ utils \ site \ sitecustomize.py",第880行,在runfile中 execfile(filename,namespace)
文件" C:\ Users \ nrshakya \ AppData \ Local \ Continuum \ Anaconda3 \ lib \ site-packages \ spyder \ utils \ site \ sitecustomize.py",102行,在execfile中 exec(compile(f.read(),filename,' exec'),命名空间)
文件" C:/Users/nrshakya/Documents/CI/src/Comp_IntelPython/ci_search_project_test.py",第8行,在模块中 来自source.search.ci_search_project import CI_Search_Project
文件"冻结了importlib._bootstrap",第961行,在_find_and_load
文件"冻结了importlib._bootstrap",第946行,在_find_and_load_unlocked中
文件"冻结了importlib._bootstrap",第885行,在_find_spec
文件"冻结了importlib._bootstrap_external",第1157行,在find_spec中
文件"冻结了importlib._bootstrap_external",第1123行,在_get_spec中
文件"冻结了importlib._bootstrap_external",第994行, iter
文件"冻结了importlib._bootstrap_external",第982行,在_recalculate
文件"冻结了importlib._bootstrap_external",第978行,在_get_parent_path
KeyError:' source'
答案 0 :(得分:1)
According to Vera's answer to their question,在包含该模块的文件夹中添加一个空的__init__.py
文件将解决此问题。