1. 程式人生 > >mac 多版本python管理及基本使用

mac 多版本python管理及基本使用

Mac上自帶了Python2.x的版本,有時需要使用Python3.0以上版本做開發,如果擔心刪除自帶python版本出現問題或者有系統依賴2.x版本,可以安裝多個版本的Python。

Mac系統自帶的python路徑:/System/Library/Frameworks/Python.framework/Version/x.x

自己安裝的python路徑:/Library/Frameworks/Python.framework/Version/x.x

如果之前自己安裝過python可以按照以下步驟刪除:

1、刪除Python框架

sudo rm -rf /Library/Frameworks/Python.framework/Versions/x.x

2、刪除Python程式

sudo rm -rf “/Applications/Python x.x”

  • 首先使用pyenv管理/切換python版本

Pyenv只會管理通過Pyenv安裝的Python版本,你自己在Python官網上下載的直接安裝的Pyenv並不能被管理!!!同樣除了系統自帶的python包外,其他直接安裝的python包是識別不出來的,即使使用的brew安裝的也識別不出來。

在終端執行:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew 常用命令一覽

$ brew --help #簡潔命令幫助

$ man brew #完整命令幫助

$ brew install git #安裝軟體包(這裡是示例安裝的Git版本控制)

$ brew uninstall git #解除安裝軟體包

$ brew search git #搜尋軟體包

$ brew list #顯示已經安裝的所有軟體包

$ brew update #同步遠端最新更新情況,對本機已經安裝並有更新的軟體用*標明

$ brew outdated #檢視已安裝的哪些軟體包需要更新

$ brew upgrade git #更新單個軟體包

$ brew info git #檢視軟體包資訊

$ brew home git #訪問軟體包官方站

$ brew cleanup #清理所有已安裝軟體包的歷史老版本

$ brew cleanup git #清理單個已安裝軟體包的歷史版本

  1. 安裝pyenv

如果想直接操作見如下:

brew update brew install pyenv brew upgrade pyenv #之後如果需要更新pyenv

然後在 .bash_profile 檔案中新增 

eval “$(pyenv init -)” 

在安裝成功之後需要在.bashrc或者.bash_profile中新增三行來開啟自動補全

export PATH="$HOME/.pyenv/bin:$PATH"eval"$(pyenv init -)"eval"$(pyenv virtualenv-init -)"

安裝後的路徑:/使用者/dong/.pyenv/versions

  1. 安裝python

檢視已安裝Python版本

pyenv versions

帶*號的是當前路徑下所使用的Python版本(此時只有system)

檢視能夠安裝的版本:

pyenv install --list 

安裝需要的版本: 

pyenv install 3.4.3 -v

完成後更新資料庫

pyenv rehash

檢視系統已安裝的版本: 

pyenv versions

檢視pyenv的命令

pyenv -h

  1. 切換python版本 

pyenv global x.x.x

pyenv versions

(注:pyenv version之列出當前的版本,pyenv versions列出所有版本以及當前選中的版本)

Python版本的設定:

  • pyenv global <version> # 全域性設定python版本為指定版本,設定全域性的 Python 版本,通過將版本號寫入 ~/.pyenv/version 檔案的方式。
  • pyenv local <version> # 設定當前路徑下python版本為指定版本,設定 Python 本地版本,通過將版本號寫入當前目錄下的 .python-version 檔案的方式。通過這種方式設定的 Python 版本優先順序較 global 高。
  • pyenv shell <version> # 設定當前shell視窗使用的python版本為指定版本,設定面向 shell 的 Python 版本,通過設定當前 shell 的 PYENV_VERSION 環境變數的方式。這個版本的優先順序比 local 和 global 都要高。–unset 引數可以用於取消當前 shell 設定的版本。

優先順序:shell > local > global

pyenv會從當前目錄開始向上逐級查詢.python-versiob檔案,直到根目錄為止,若找不到,則使用global版本。

  1. Python解除安裝

pyenv isntall <version> # 安裝版本號為<version>的Python pyenv uninstall <version> #解除安裝版本號為<version>的Python

  1. 說明:

系統自帶的指令碼會以/usr/bin/python的方式直接呼叫老版本的python,因而不會對系統指令碼產生影響; 

使用pip安裝第三方模組時會安裝到~/.pyenv/versions/3.4.1下,不會和系統模組發生衝突。 

使用pip安裝模組後,可能需要執行pyenv rehash更新資料庫 

  1. pip 是通用的Python包管理工具。提供了對 Python 包的查詢、下載、安裝、解除安裝的功能。

如果安裝的Python 2 >=2.7.9 或者Python 3 >=3.4 那麼Python自帶了pip,所以不用安裝,配置下它的環境就可以

路徑:Python安裝路徑\Scripts

1)pip的自我更新

$ pip install -U pip

2)安裝 PyPI軟體包 

$ pip install SomePackage # latest version

$ pip install SomePackage==1.0.4 # specific version

$ pip install 'SomePackage>=1.0.4' # minimum version

3)解除安裝安裝包

$ pip uninstall SomePackage

4)檢視列出已安裝的軟體包

$ pip list

5)查詢需要更新的軟體包

$ pip list --outdated

6)更新軟體包

$ pip install --upgrade SomePackage

7)檢視軟體包的詳細資訊

$ pip show sphinx

8)搜素軟體包

$ pip search "query"

  1. Jupyter Notebook

Jupyter Notebook(此前被稱為 IPython notebook)是一個互動式筆記本,支援執行 40 多種程式語言。

1)Installing Jupyter with pip

如果是python3:

python3 -m pip install --upgrade pip

python3 -m pip install jupyter

果是python2:

python -m pip install --upgrade pip

python -m pip install jupyter

2)啟動

jupyter notebook

注:Jupyter Notebook匯出pdf錯誤

pip install nbconvert# ORconda install nbconvert

  1. Conda介紹

conda類似於npm或maven的包管理工具,功能上類似 pip 和 vitualenv 的組合,分為minconda和anaconda,minconda是簡化版本,只包含conda和其依賴。anaconda支援windows、mac和linux系統,且有兩個型別的版本,分別是GUI和command line版本,前者是圖形介面,後者是命令列介面,佔用資源較少。conda有python3.x和python2.x系列兩個版本。

conda 的環境管理與 virtualenv 是基本上是類似的操作。

# 檢視幫助

conda -h 

# 基於python3.6版本建立一個名字為python36的環境

conda create --name python36 python=3.6 

# 啟用此環境

activate python36 source activate python36 

# linux/mac# 再來檢查python版本,顯示是 3.6

python -V 

# 退出當前環境

deactivate python36 

# 刪除該環境

onda remove -n python36 --all

# 或者

conda env remove -n python36

# 檢視所以安裝的環境conda info -ebase * /Applications/anaconda3

python36 /Applications/anaconda3/envs/python36

conda 的包管理功能可 pip 是一樣的,當然你選擇 pip 來安裝包也是沒問題的。

# 安裝 matplotlib

conda install matplotli

b# 檢視已安裝的包

conda list

# 包更新

conda update matplotlib

# 刪除包

conda remove matplotlib

在 conda 中 anything is a package。conda 本身可以看作是一個包,python 環境可以看作是一個包,anaconda 也可以看作是一個包,因此除了普通的第三方包支援更新之外,這3個包也支援。比如:

# 更新conda本身

conda update conda

# 更新anaconda 應用

conda update anaconda

# 更新python,假設當前python環境是3.6.1,而最新版本是3.6.2,那麼就會升級到3.6.2

conda update python

修改映象地址Anaconda 的映象地址預設在國外,用 conda 安裝包的時候會很慢,目前可用的國內映象源地址有清華大學的。修改 ~/.condarc (Linux/Mac) 或 C:\Users\當前使用者名稱\.condarc (Windows) 配置:

channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ - defaultsshow_channel_urls: true

如果使用conda安裝包的時候還是很慢,那麼可以考慮使用pip來安裝,如果使用conda安裝包的時候還是很慢,那麼可以考慮使用pip來安裝,\pip\pip.ini (Windows) 配置:

[global]trusted-host = pypi.douban.comindex-url = http://pypi.douban.com/simple
  1. conda的理解

Package, dependency and environment management for any language—Python, R, Ruby, Lua, Scala, Java, JavaScript, C/ C++, FORTRAN

Conda is an open source package management system and environment management system that runs on Windows, macOS and Linux. Conda quickly installs, runs and updates packages and their dependencies. Conda easily creates, saves, loads and switches between environments on your local computer. It was created for Python programs, but it can package and distribute software for any language.

Conda as a package manager helps you find and install packages. If you need a package that requires a different version of Python, you do not need to switch to a different environment manager, because conda is also an environment manager. With just a few commands, you can set up a totally separate environment to run that different version of Python, while continuing to run your usual version of Python in your normal environment.

In its default configuration, conda can install and manage the thousand packages at repo.continuum.io that are built, reviewed and maintained by Anaconda®.

Conda can be combined with continuous integration systems such as Travis CI and AppVeyor to provide frequent, automated testing of your code.

The conda package and environment manager is included in all versions of Anaconda®, Minicondaand Anaconda Repository. Conda is also included in Anaconda Enterprise , which provides on-site enterprise package and environment management for Python, R, Node.js, Java and other application stacks. Conda is also available on PyPI, although that approach may not be as up to date.

其中還推薦一篇文以及翻譯文,能夠更好的理解:

原文: https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/

翻譯: https://blog.csdn.net/taopanpantao/article/details/53982752

  1. 後續更新。。。

相關推薦

mac 版本python管理基本使用

Mac上自帶了Python2.x的版本,有時需要使用Python3.0以上版本做開發,如果擔心刪除自帶python版本出現問題或者有系統依賴2.x版本,可以安裝多個版本的Python。 Mac系統自帶的python路徑:/System/Library/Frameworks/

mac版本python安裝 pymysql

pos -m cmake sudo mysq 但是 version 安裝 keyword 系統裏面安裝了多個python的版本,有2.7和3.4等。默認的2.7版本,但我開發需要3.4版本的。默認情況下,用pip安裝PyMySQL $sudo pip inst

CentOS6 下版本python管理(pyenv+python+virtualenv+ipython)

pyenv是個多版本python管理器,可以同時管理多個python版本共存,如pypy,miniconde等等 1 環境準備 安裝相關軟體和pyenv 1.1 安裝相關軟體 yum install -y readline readline-devel readline-static opens

版本Python安裝pippip版本管理終極教程

轉載自: https://zhuanlan.zhihu.com/p/37473690 此Blog簡直就是解決了我多年心病,這python, pip版本可煩死我了. 終於解決了感覺無敵了hahaha. 非常感謝知乎博主“稀有動物” 有時候電腦或伺服器裡需要安裝多個版本的Pyth

Ubuntu下安裝pyenv管理版本python

.com 安裝pyenv version dash pytho brush 我們 ash lvm 安裝Python版本管理工具——Pyenv git clone git://github.com/yyuu/pyenv.git ~/.pyenv e

mac python 版本環境配置

一、配置預設python版本為2.7 1、vi ~/.bash_profile (預設沒有這個檔案,建立一個即可) 2、增加以下配置 alias python="/System/Library/Frameworks/Python.framework/Versio

mac下安裝版本python[轉]

mac自帶的python是2.7版本的,為了方便學習,建議再安裝一個3.x的版本,python的多個版本通過pyenv來管理,具體詳見下面的步驟: 1.安裝homebrew 開啟終端輸入如下命令,就可以安裝homebrew。 angel:~ $ ruby -e "

MAC OS 下版本python共存和切換

轉自:http://lovekaiyuan.iteye.com/blog/2214417   Mac OS裡面的python預設為2.7版本,但是現在隨著python3越來越普及,覺得還是需要轉移到python3.畢竟是未來的趨勢。      不過遇到的麻煩就是系統很多還是

在Anaconda中實現版本Python共存

anaconda spyder python windows檢查conda版本在Windows的cmd下輸入 conda --version 如圖:其中本機Anaconda自帶的Python3.6版本的。在conda中創建一個名為python27的環境,並下載對應版本的Python2.7cmd下輸入conda

Anaconda環境版本python配置指導

實現 新環境 說明 安裝 切換 克隆 ans 文件 fine Anaconda多環境多版本python配置指導 來自:http://www.jianshu.com/p/d2e15200ee9b 原文地址:http://conda.pydata.org/docs/test-

版本opencv管理;find_package()的原理解析

bsp 庫文件 目的 優先 http so庫 eight 共享 inf 近期用cmake編譯程序時,報錯找不到opencv2。由於我電腦裏安裝了多個版本的opencv,管理不善,借此機會梳理一下思路。 1. Cmake -- find_package(Opencv REQU

版本 Python 在使用中的靈活切換

主程序 使用 type 系統環境變量 form 繼續 title 1.0 指定 今天我們來說說在 windows 系統上如果有多版本的 python 並存時,如何優雅的進行靈活切換。 雖然 Python3 已經出來很久了,雖然 Python2 即將成為歷史了,但是因為歷史原

Anaconda環境python管理(建立、刪除、複製環境)

Anaconda介紹 Anaconda是一款對python多環境進行管理的軟體。它能夠比較方便快捷地獲取包,並且對包和相關環境進行統一的管理。Anaconda中包含了conda、python在內的超過180個科學包及其依賴項。 管理環境 Anaconda的一個最大的優勢在於可以同

ubuntu14.04版本jdk安裝切換

系統:ubuntu14.04 一、安裝openjdk1.7 sudo apt-get install openjdk-7-jre openjdk-7-jdk 安裝完成後找到其安裝路徑: dpkg -L openjdk-7-jdk 二、安裝jdk1.8(我的jdk是1.8.0

pycharm版本python共存設定參考,可正常使用pip

由於我在安裝過程中沒有截圖因此使用文字描述,望諒解 1、將python3或者2的exe其中之一重新命名為python3(python2),這一步主要是參考了他人的配置建議 2、檢查是否將python安裝的資料夾路徑新增到環境變數path中,若有的話在path中可以找到①安

Anaconda建立新虛擬環境並建立jupyter notebook相應的kernel ( 含版本python )

首先建立虛擬環境 conda create -n <your_env_name> python==x.x  #建立x.x版本的python環境 activate <your_env_name>   #進入該虛擬環境,否則使用pip等命令會呼叫到預設的全域性

ubuntu下版本opencv安裝切換

https://blog.csdn.net/qq_34952119/article/details/71501652 https://blog.csdn.net/learning_tortosie/article/details/80594399 https://opencv.org/rel

版本python安裝TensorFlow出現的各種事故

TensorFlow™ 是一個採用資料流圖(data flow graphs),用於數值計算的開源軟體庫。節點(Nodes)在圖中表示數學操作,圖中的線(edges)則表示在節點間相互聯絡的多維資料陣列,即張量(tensor)。它靈活的架構讓你可以在多種平臺上展開計算,例如臺式計算機中的一個或多個CPU(或G

ubuntu下安裝版本Python

  系統環境:ubuntu14.04LTS,系統預設的python版本為2.7,我這裡想要再安裝一個3.4.3版本。 再安裝python之前,我們首先要安裝這個管理工具pyenv: $ git clone git://github.com/yyuu/pyenv.git ~/.p

Windows下版本Python共存

當機器上同時裝有 Python2.7 和Python 3.x 兩個版本,會導致在Shell中執行 Python 命令時衝突,比如我們先安裝的Python2.7, 在Path中也預設加入了Python2.7/ 路徑的索引,當我們想要執行Python3.X的Python命令時系