1.3反思與挖掘
2.python 離線包的安裝
3.python中影象處理包的區別
規範來講,pil包已經被廢棄,取而代之的是pillow包,但pillow包的介面與pil一致,二者可以近似的認為乙個東西。
搜尋關鍵字pypi pil 可以看到pil的更新時間截至到2023年
搜尋關鍵字pypi pillow可以看到pillow包在不斷的更新,目前已至當前時間2023年
from pil import image
使用conda install pillow成功安裝pillow包之後,在anaconda prompt下輸入上述**,可成功匯入相應模組。
但在cmd或者vscode等編譯器中輸入上述**,則報如下的錯:
>>> from pil import image
traceback (most recent call last):
file "", line 1, in file "d:\softwarepath\anaconda3\lib\site-packages\pil\image.py", line 94, in from . import _imaging as core
importerror: dll load failed: 找不到指定的模組。
通過在網上搜尋,發現到兩個解決方案,親測可用。前提都是conda uninstall pillow先解除安裝之前沒安裝成功的pillow.然後進行如下操作:
方案一:pip install pillow
方案二:conda install -c conda-forge pillow
(網上有講這種方案的,但我試了好像不行,不知道為什麼)
問題雖然解決,但背後的原理,網上查了很長時間,也還沒弄懂,如果有博友知道為什麼直接conda install 不行,希望能留下你的指教。這裡記錄一下在試圖了解背後原因的過程中,網上查到的一些資料。
、pip是受python官方支援的python包管理工具。而conda則不單單針對於python,它支援r 、c等,所以對於python來講,pip才是受到認可的「正規軍」?
conda config --add channels conda-forge
這個時候就會在配置檔案,一般位於c:\users\你的使用者名稱.condarc**現如下內容,可以看到channels中新增了conda-forge,並且其優先順序位於defaults(anaconda源)的前面
結果就不展示了,大家自己實驗
追加channel與新增channel相比的區別是,追加的channel的優先順序低
conda clean -p
或者
conda clean -a
會清理掉沒有使用的包,我清理了下,刪除了1個多g空間
在有網的情況下,可以使用pip install ***或者conda install ***直接安裝python包。但有得時候,無網路的情況下,可以使用如下方式進行離線安裝。
第三種適用於無網但有內部pip源的情形(一般大型公司都會有自己的源),可以指定公司的源來進行安裝。pip install *** -i
源位址
引用csdn博主名為「coral_2014」「的總結:對於常見的jpeg來說,pil和skimage庫load的影象的資料是完全一樣的,而opencv載入的資料和這兩個庫有很大差別。對於png來說,這三個庫load的影象的資料都是一樣的。這應該與每個庫使用的更底層的影象解碼庫有關。 其中skimage.io.imread可以傳入乙個叫plugin的引數,用來指定使用的影象解碼庫。官方文件有如下介紹:「by default, the different plugins are tried (starting with the python imaging library) until a suitable candidate is found. if not given and fname is a tiff file, the tifffile plugin will be used.」[ 也就是說skimage.io.imread缺省會先呼叫pil庫對影象進行解碼,如果失敗的話會呼叫其他庫。這也是skimage和pil庫在load jpeg時資料是一致的。 我也檢視了一下python-opencv的imread函式的說明文件,裡面提到了在windows和mac環境下,opencv使用的是安裝包自帶的編解碼器,主要是ibjpeg/libpng/libtiff等開源的影象編解碼器。「
python包的各種安裝問題彙總
1 linux 下安裝python軟體包 pip nose virtualenv distribute 參考文獻 5 有時會發生 unknow url type htpps linuxs下其他庫的安裝 2 python環境的搭建 順便搭配notepad 配置語言與編譯器比較簡單,baidu下 執行p...
Linux 各種安裝包
1 tar包,如software 1.2.3 1.tar.gz。它是使用unix系統的打包工具tar打包的。2 rpm包,如software 1.2.3 1.i386.rpm。它是redhat linux提供的一種包封裝格式。安裝 rpm包的命令是 rpm 引數,包管理工具 yum 3 deb包,如...
python安裝包報錯網路問題
比如 could not find a version that satisfies the requirement pygame from version no matching distribution found for pymongo 可能考慮到是python國內網路的問題,這時我們用國內的...