前言
在Python開發中,需要安裝一下包、依賴庫或軟體等,有時出現網絡、權限和無法安裝等問題困擾着我們,經曆過一段時間的洗禮,悟出了一些要點分享給大家。
一、pip指令
1)指定國内下載下傳源---加速下載下傳
背景
有時使用pip安裝依賴庫或軟體時,看到10KB~30KB的速度下載下傳,真的是恨鐵不成剛,為什麼不能快一些呢;明明電腦下載下傳時都有1M~3M的,感到無奈,一直在等待安裝。
分析
如果排除是電腦本身網絡速度慢問題,那很有可能是安裝依賴庫或軟體是外網的,需要從外網那裡擷取;這樣自然就很慢啦
解決方法
發現問題是需要從外網擷取,那麼如果國内中有,我們從國内中擷取就可以啦;速度會有質的飛躍。
pip install xxxx -i https://pypi.mirrors.ustc.edu.cn/simple
xxxx 為要安裝的依賴庫或軟體名稱,例如:要安裝numpy,即 pip install numpy -i
https://pypi.mirrors.ustc.edu.cn/simple-i 是指定下載下傳源 ,其後面是下載下傳源的位址 ,即:阿裡雲
可選的國内源:
(1)阿裡雲
https://mirrors.aliyun.com/pypi/simple/(2)豆瓣
https://pypi.douban.com/simple/(3)清華大學
https://pypi.tuna.tsinghua.edu.cn/simple/(4)中國科學技術大學
https://pypi.mirrors.ustc.edu.cn/simple/(5)華中科技大學
https://pypi.hustunique.com/2)指定安裝特定版本的
在安裝一下配套的軟體(依賴庫)時需要考慮版本相容性,否則很可能導緻無法使用
我們首先查清楚依賴的是什麼版本,例如需要安裝opencv3.4,而不是opencv4.2;然後在pip中指定版本來安裝就可以啦
先檢視本機能安裝那些版本的
pip install xxxx==
挑選合适的版本安裝
pip install xxxx==3.4.3.18
例如:在python開發環境中安裝opencv 3.4.3.18
pip install opencv-python== #檢視opencv-python有那些版本可以安裝
pip install opencv-python==3.4.3.18 #安裝3.4.3.18版本的opencv
3)指定Python2或Python3安裝
在Ubuntu系統中,預設為我們安裝了兩個Python;一個是Python2.7,另一個是Python3.x ,這裡溫馨提醒一下不要擅自解除安裝其中一個Python,很可能導緻系統出錯最終重裝系統收場;有時候需要安裝在安裝在Python3中,而不是Python2。
如果有多個版本的Python,那我們在安裝軟體時指定Python的版本來安裝就可以啦
解決方案
指定Python2.7安裝依賴庫或軟體
python2.7 -m pip install xxxx
或 python2 -m pip install xxxx
4)pip使用是遇到權限問題
在Ubuntu中,使用pip安裝一些一些依賴庫時,會報權限問題;這些可能會想到用sudo不久可以了嗎?是的,部分情況下确實可以使用sudo來安裝。但是在不能使用sudo的情況下,如果解決這個權限問題呢?
例如在docker中使用pip安裝,如果使用了sudo會導緻部分資源無權限使用
添加--user
pip install opencv-python==3.4.3.18 --user
彩蛋----檢視python安裝了哪些庫、子產品
1)pip list 或者 pip freeze all
2)help('modules')
3)如果是windows的系統,參考:
https://www.cnblogs.com/gitwow/p/10706257.html二、apt-get指令
1)修改國内軟體源
有時使用apt-get安裝依賴庫或軟體時,看到15KB~40KB的速度下載下傳,真的是恨鐵不成剛,為什麼不能快一些呢;明明電腦下載下傳時都有1M~3M的,感到無奈,一直在等待安裝。
具有教程,參考我這篇部落格:
https://guo-pu.blog.csdn.net/article/details/888082102)更新apt-get為多線程下載下傳
apt-get預設是單線程下載下傳的,在解決了網絡、軟體源等問題後,把apt-get更新為多線程apt-fast
在Linux中,預設的apt-get install 有時候會下載下傳非常慢,尤其是添加的一些ppa去下載下傳。發現apt-fast是個好東西,apt-fast 通過使用多線程下載下傳來給apt-get 提速。經過測試效果出奇的好。
apt-fast shell 封裝器通過多個連接配接同時下載下傳一個包來加速 apt-get/apt 和 aptitude 指令,進而使得自己的工作效率得到提升。
安裝apt-fast
https://guo-pu.blog.csdn.net/article/details/103477431希望對你有幫助;
如果發現不對的地方,歡迎大家指正。