[英]How do I solve a KeyError when importing a python module?
我試圖從不同的目錄級別導入模塊,所以我使用了:
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')
文件“C:\\Users\\nrshakya\\AppData\\Local\\Continuum\\Anaconda3\\lib\\site-packages\\spyder\\utils\\site\\sitecustomize.py”,第 880 行,運行文件 execfile(文件名,命名空間)
文件“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 的模塊
_find_and_load 中的文件“frozen importlib._bootstrap”,第 961 行
_find_and_load_unlocked 中的文件“frozen importlib._bootstrap”,第 946 行
_find_spec 中的文件“frozen importlib._bootstrap”,第 885 行
find_spec 中的文件“frozen importlib._bootstrap_external”,第 1157 行
_get_spec 中的文件“frozen importlib._bootstrap_external”,第 1123 行
文件“frozen importlib._bootstrap_external”,第 994 行,在迭代器中
_recalculate 中的文件“frozen importlib._bootstrap_external”,第 982 行
_get_parent_path 中的文件“frozen importlib._bootstrap_external”,第 978 行
關鍵錯誤:'來源'
根據 Vera 對他們問題的回答,在包含模塊的文件夾中添加一個空的__init__.py
文件將解決這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.