Python中ImportError錯(cuò)誤的詳細(xì)解決方法
ImportError: No module named XXX 錯(cuò)誤解決
問(wèn)題
錯(cuò)誤:ImportError: No module named XXX
在Python的工程中,偶爾會(huì)遇到文件無(wú)法引用的情況,即PyCharm IDE支持文件跳轉(zhuǎn),但是當(dāng)文件執(zhí)行時(shí),找不到模塊。
例如,錯(cuò)誤如下:
Traceback (most recent call last):
File "utils/average_clinic.py", line 17, in <module>
from utils.file_utils import listdir_files, show_string
ImportError: No module named file_utils
解決
首先,在py文件的頂部,引入根目錄,如
import os import sys p = os.path.dirname(os.path.dirname((os.path.abspath(__file__)))) if p not in sys.path: sys.path.append(p) # print p # 顯示路徑
其次,檢查文件的Working directory,位置:
第一步是導(dǎo)入工程路徑,第二步是檢查文件的工作目錄。優(yōu)先檢查工作目錄,其次檢查工程路徑。同時(shí),要注意PyCharm自動(dòng)生成文件引用不一定正確,如:
from file_utils import listdir_files, show_string # 錯(cuò)誤的引用,文件位于同一目錄下,不使用包名 # from utils.file_utils import listdir_files, show_string
補(bǔ)充:ImportError: libGL.so.1: cannot open shared object file: No such file or directory
報(bào)錯(cuò)信息
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
報(bào)錯(cuò)分析
在使用opencv-python的過(guò)程中,只是通過(guò)pip安裝了cv相關(guān)的python包,但是沒有關(guān)注cv對(duì)于底層系統(tǒng)中部分共享庫(kù)的依賴。這個(gè)在docker中是一個(gè)常見的錯(cuò)誤。
解決方案
方案1: 安裝cv2的依賴
這里只是舉例部分環(huán)境,至于具體需要安裝哪些庫(kù),對(duì)應(yīng)的庫(kù)名稱,需要參考你本身的系統(tǒng)查詢后,方可執(zhí)行。
apt-get install ffmpeg libsm6 libxext6 -y
方案2: 安裝python3-opencv或者opencv-python-headless
可以通過(guò)安裝python3-opencv或opencv-python-headless庫(kù)來(lái)實(shí)現(xiàn)便捷的處理依賴。
apt-get install python3-opencv -y
apt-get install opencv-python-headless -y
總結(jié)
到此這篇關(guān)于Python中ImportError錯(cuò)誤的文章就介紹到這了,更多相關(guān)Python ImportError錯(cuò)誤內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 解決python報(bào)錯(cuò)ImportError:urllib3?v2.0?only?supports?OpenSSL?1.1.1+
- python解決報(bào)錯(cuò)ImportError: Bad git executable.問(wèn)題
- python之ImportError:模塊引入異常問(wèn)題
- 關(guān)于Python ImportError: No module named 通用解決方法
- Windows環(huán)境下Python3.6.8 importError: DLLload failed:找不到指定的模塊
- 詳解python3中用HTMLTestRunner.py報(bào)ImportError: No module named ''StringIO''如何解決
- 從零學(xué)python系列之新版本導(dǎo)入httplib模塊報(bào)ImportError解決方案
- Python報(bào)錯(cuò)ImportError:?IProgress?not?found.?Please?update?jupyter?and?ipywidgets解決
相關(guān)文章
python 數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換的總結(jié)
這篇文章主要介紹了python 數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換的使用總結(jié),幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01No module named ‘win32gui‘ 的解決方法(踩坑之旅)
這篇文章主要介紹了No module named ‘win32gui‘ 的解決方法(踩坑之旅),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02一篇文章告訴你如何用Python控制Excel實(shí)現(xiàn)自動(dòng)化辦公
這篇文章主要介紹了教你怎么用Python處理excel實(shí)現(xiàn)自動(dòng)化辦公,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有非常好的幫助,需要的朋友可以參考下2021-08-08Python urls.py的三種配置寫法實(shí)例詳解
這篇文章主要介紹了Python urls.py的三種配置寫法實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-04-04Pandas 重塑(stack)和軸向旋轉(zhuǎn)(pivot)的實(shí)現(xiàn)
這篇文章主要介紹了Pandas 重塑(stack)和軸向旋轉(zhuǎn)(pivot)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07python3+PyQt5+Qt Designer實(shí)現(xiàn)界面可視化
本文主要介紹了python3+PyQt5+Qt Designer實(shí)現(xiàn)界面可視化,Qt Designer,用鼠標(biāo)拖拖就能完成窗體設(shè)計(jì),感興趣的可以了解一下2021-06-06