近期Comyn老師的Python視頻推出以後,你們一直在討論者pyenv這個軟件的應用問題,簡單寫一篇基本用法,給你們作下簡單介紹:
python
目錄:git
1、pyenv介紹github
2、centos6.4上安裝配置pyenvsql
3、使用pyenv安裝pythonshell
4、pyenv的基本應用vim
5、pip安裝與配置centos
6、使用pip安裝python相關軟件bash
1、pyenv介紹微信
項目地址:https://github.com/yyuu/pyenvsession
關於pyenv的介紹:
通常在操做系統中咱們會安裝多個Python版本,在*nix系統中通常默認就自帶了Python2與Python3兩個版本,因此在進行Python版本切換時會比較麻煩,pyenv就提供了一種簡單的方式。
pyenv是一個能簡易地在多個Python版本中進行切換的工具,它簡單而優雅。
pyenv有如下功能:
進行全局的Python版本切換
爲單個項目提供對應的Python版本
使用環境變量能讓你重寫Python版本
能在同一時間在不一樣版本間進行命令搜索
擁有如下特色:
只依賴Python自己
將目錄添加進$PATH便可使用
可以進行virtualenv管理
2、centos6.4上安裝配置pyenv
爲安裝pyenv作準備工做(不然到後期使用pyenv的時候會有各類各樣的問題)
[root@ansible1 ~]# yum groupinstall "Development tools"
[root@ansible1 ~]# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
2.一、安裝pyenv
安裝方式一:
[root@ansible1 ~]# curl https://raw.github.com/yyuu/pyenv-installer/master/bin/pyenv-installer |bash
安裝方式二:
[root@ansible1 ~]# git clone git://github.com/yyuu/pyenv.git .pyenv
2.二、環境變量的設置
設置方式一(推薦該方式)
[root@ansible1 ~]# vim /etc/profile.d/pyenv.sh
#!/bin/bash
# File Name: /etc/profile.d/pyenv.sh
# Author: 馬哥教育
# QQ: 1661815153
# Created Time: Fri 16 May 2014 02:27:06 AM CST
#########################################################################
# Define environment variable
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval"$(pyenv init -)"
[root@ansible1 ~]# source /etc/profile.d/pyenv.sh
設置方式二 (該方式使得添加的環境變量和系統的環境變量在一塊,不利於管理)
# 把咱們剛纔設置的pyenv.sh文件移除
[root@ansible1 ~]# mv /etc/profile.d/pyenv.sh ./
[root@ansible1 ~]# source /etc/profile
# 這裏咱們看到pyenv已經檢測不到了
[root@ansible1 ~]# pyenv
-bash: pyenv: command not found
[root@ansible1 ~]#
# 追加下面四條指令到~/.bash_profile文件中去
[root@ansible1 ~]# echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
[root@ansible1 ~]# echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
[root@ansible1 ~]# echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
[root@ansible1 ~]# exec $SHELL
[root@ansible1 ~]# pyenv versions
bash: pyenv: command not found
# 使之生效
[root@ansible1 ~]# source ~/.bash_profile
# 驗證
[root@ansible1 ~]# pyenv versions
* system (set by /root/.pyenv/version)
[root@ansible1 ~]#
設置方式三 (該方式每次都要解析一遍pyenv init -輸出的內容,不建議使用)
# 安裝pyenv
[root@ansible1 ~]# curl https://raw.github.com/yyuu/pyenv-installer/master/bin/pyenv-installer |bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
00000000--:--:--0:00:22--:--:--0
# 添加pyenv到PATH中去
[root@ansible1 ~]# vim /etc/profile
[root@ansible1 ~]# source /etc/profile
# 添加環境變量
[root@ansible1 ~]# echo 'eval "$(pyenv init -)"' > /etc/profile.d/pyenvnew.sh
[root@ansible1 ~]# source /etc/profile.d/pyenvnew.sh
-bash: pyenv: command not found
[root@ansible1 ~]# cat /etc/profile.d/pyenvnew.sh
eval"$(pyenv init -)"# 這裏沒有找到是由於對當前會話沒有生效
[root@ansible1 ~]# pyenv
-bash: pyenv: command not found
2.三、安裝好了,讓咱們看看pyenv的內置命令都有哪些
3、使用pyenv安裝python
咱們這安裝兩個版本,一個2.7.6 一個3.3.3
安裝2.7.6版本
[root@ansible1 ~]# pyenv versions
* system (set by /root/.pyenv/version)
[root@ansible1 ~]# python -V
Python 2.6.6
[root@ansible1 ~]# pyenv install 2.7.6
[root@ansible1 ~]# pyenv versions
* system (set by /root/.pyenv/version)
2.7.6
[root@ansible1 ~]#
安裝3.3.3版本
[root@ansible1 ~]# pyenv versions
* system (set by /root/.pyenv/version)
2.7.6
[root@ansible1 ~] [root@ansible1 ~]# pyenv install 3.3.3
4、pyenv的基本應用
輸入pyenv -h能夠查看pyenv的命令
commands List all available pyenv commands
local Set or show the local application-specific Python version
global Set or show the global Python version
shell Set or show the shell-specific Python version
install Install a Python version using python-build
uninstall Uninstall a specific Python version
rehash Rehash pyenv shims (run this after installing executables)
version Show the current Python version and its origin
versions List all Python versions available to pyenv
which Display the full path to an executable
whence List all Python versions that contain the given executable
咱們經常使用的幾個命令:
pyenv version #顯示當前使用的Python
pyenv which python #顯示當前Python的安裝路徑
pyenv global <version> #設置默認的Python版本
pyenv local <version> #在當前路徑建立一個.python-version,之後進入這個目錄自動切換爲該版本
pyenv shell <version> #在當前shell的session中啓用某個Python版本,優先級高於global,local
查看當前系統上所安裝的python版本
[root@ansible1 ~]# pyenv versions
system
*2.7.6 (set by /root/.python-version)
3.3.3
5、pip安裝與配置
使用yum來安裝pip
[root@ansible1 ~]# yum install python-pip
更換pip的源爲國內的,爲何,你懂得
[root@ansible1 ~]# ls -a
. .bash_history .cshrc .pip .ssh .vimrc
.. .bash_logout .distlib .pki .tcshrc
anaconda-ks.cfg .bash_profile install.log .pyenv test.sh
.ansible .bashrc install.log.syslog pyenv.sh .viminfo
# 咱們能夠看到pip.conf是不存在的
[root@ansible1 ~]# ls ~/.pip/
pip.log
[root@ansible1 ~]# vim ~/.pip/pip.conf
# 添加兩行,定義使用國內的豆瓣的pip源
[root@ansible1 ~]# tail ~/.pip/pip.conf
[global]
index-url = http://pypi.douban.com/simple
[root@ansible1 ~]#
6、使用pip安裝python相關軟件
你還在使用系統自帶的python來敲命令麼,你out了,使用ipython吧,命令行下這個就夠了
看到下面的這個報錯,你明白爲何咱們前面要安裝pyenv了吧
馬哥官方微信: