前言
方便管理各類python庫環境,來回切各類環境,因爲有的時候別人的代碼運行需要特定的python版本,所以新建一個python環境非常方便。
安裝
Anaconda官方下載之後,Mac 下直接用命令行來安裝吧:
$ bash ~/Downloads/Anaconda3-5.3.1-MacOSX-x86_64.sh // python3版本
安裝過程中會讓你輸入yes 或 回車健,一路按照提示輸入就行,沒啥好猶豫的,安裝後驗證一下:
$ source ~/.bash_profile // 讓環境變量生效
$ conda -V
# conda 4.7.12 // 輸出conda 版本號
出現 conda 4.7.12 就說明安裝成功。
常用命令使用
1、創建環境
$ conda create -n myenv python=3.7
生成指定python 3.7版本的環境,myenv 是環境名
2、多個環境建立好了,具體讓那個生效呢?
$ conda activate myenv
有的環境利用的是 source activate ,這個跟安裝的conda環境有關。指定要生效的環境名。
3、退出環境
$ conda deactivate
4、也可以刪除 環境
$ conda remove --name myenv --all
5、查看環境列表
$ conda env list
6、查看環境中的安裝庫
conda list -n myenv
可以瞭解環境中
7、搜索包
conda search XXX
8、安裝包
$ conda install XXX
這裏的安裝沒有指定環境,其實是所有環境都可以使用這個庫,相當於本地安裝庫一樣
9、移除包
$ conda remove XXX
這個移除類似移除本地的庫
10、安裝庫 到指定環境
$ conda install -n myenv XXX
庫包管理
除了利用conda來安裝包,還可以用pip來安裝包,這是python 推薦的安裝工具,
1、pip list
查看本地環境安裝的那些包,你說如果我在一個conda 環境下可以使用這個命令,可以看到該環境安裝的庫包嘛?
2、pip install xxx
安裝庫包
pip install SomePackage==1.0.4 # 指定版本
pip install 'SomePackage>=1.0.4' # 最小版本
環境管理
新建環境是一個特別趕緊的環境,我們可以指定一個公共的環境,這裏面放一些基本的庫包,然後有特殊的庫包要求,可以複製這個環境創建新環境,然後在新環境中安裝特殊要求的庫包版本號。
假設我們的基本庫包爲common環境,我們可以在這個環境中安裝一些基本的包:
conda install scikit-learn
conda install numpy
conda install pandas
conda install lightgbm
通過複製功能,新建一個環境newenv:
conda create -n newenv --clone common
這樣newenv 環境 包含了common 環境的庫包,不需要額外安裝。
環境管理注意要點
上面是相關命令,但是Anaconda環境管理還沒講到,這是他的主要優勢,建議:
- 儘可能使用pip安裝一些公有包
- 用conda 安裝一些 特殊版本的包
- 經可能的給指定 環境 安裝庫
目前已經知道的知識點是:
- conda創建的虛擬環境,只能創建當前與python版本相同的虛擬環境,所以它所含的包也是當前環境中pip安裝過的包
有人補充:
- conda install的package似乎是在anaconda\pkgs下,而pip install的package是在anaconda\Lib\site-packages下。推薦使用pip管理包(pip是python官方推薦的包管理器)
- 如果你在base環境,pip install的package應該就是安裝在anaconda\Lib\site-packages下,然後其他虛擬環境下的使用python packages時優先搜索該虛擬環境下的package,如果沒有它就搜索base環境下的package,也就是base環境下的package是可以被其他虛擬環境使用的,如果你進入其他虛擬環境下使用pip install,那麼下載的包就只在這個虛擬環境中
配置鏡像源
配置鏡像源到目的是爲來快速安裝庫包,畢竟配置爲國內的鏡像源下載庫包更快,命令如下:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
使用 如下命令可以看到以下是否添加成功:
conda info
這個命令會打印出鏡像信息。
與jupyter notebook關聯
主要參考這篇文章,講解的比較到位。https://zhuanlan.zhihu.com/p/29564719。
基本上安裝來annaconda ,也安裝了jupyter notebook,通過命令就可以打開:
jupyter notebook
啓動之後瀏覽器就會跳出url :http://127.0.0.1:8888/tree 的頁面,那就是該編輯器的頁面,修改啓動notebooks 在本地路徑:
jupyter notebook --generate-config // 獲取在電腦上的配置文件
輸入命令後,得到配置文件路徑:
Writing default config to: /Users/znss/.jupyter/jupyter_notebook_config.py
如果此文件是隱藏文件,mac 電腦下可能看不到,可以用vi打開該配置文件,或者設置顯示隱藏文件,這樣你就可以用sublime text 軟件打開,主要是修改文件中的一個配置項:
## 用於筆記本和內核的目錄。
c.NotebookApp.notebook_dir = '/Users/znss/Public/work/workspace/python/'
把這裏的路徑填寫爲你自己想要設置的路徑就可以了,這樣每次打開都會去找這個路徑。
同時爲了讓jupyter notebook 可以使用conda創建的多個環境,如圖所示:
使用conda安裝插件,命令如下所示:
conda install nb_conda
插件一路yes 之後安裝完畢,你可以啓動,另一種方式:
python -m ipykernel install --user --name py3 --display-name "py3"
存在的問題
1、本地用pip 安裝的庫包,conda 創建的環境是不是都可以用?
2、conda base環境下安裝的庫包,是不是conda其他環境都可以用
3、進而存在,移除base包,其他所有創建的環境是不是都失效了,沒有了環境?
社招、校招內推時刻
本人在阿里巴巴工作,業餘時間做了社招、校招的公衆號,可以內推大家,免篩選直接面試,公衆號的一些文章也幫助大學、研究生的一些同學瞭解校招、瞭解名企,工作幾年的同學想換工作也可以找我走社招內推,同時大家對文章有問題,也可以公衆號找我,掃碼關注哦!