簡體   English   中英

導入python模塊時如何解決KeyError?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM