您的位置:首页 > 编程语言 > Python开发

Python多版本管理软件pyenv的安装应用及pip的使用讲解

2015-04-19 10:15 956 查看
近期Comyn老师的Python视频推出之后,大家一直在讨论者pyenv这个软件的应用问题,简单写一篇基本用法,给大家做下简单介绍:目录:一、pyenv介绍二、centos6.4上安装配置pyenv三、使用pyenv安装python四、pyenv的基本应用五、pip安装与配置六、使用pip安装python相关软件一、pyenv介绍项目地址:https://github.com/yyuu/pyenv关于pyenv的介绍:一般在操作系统中我们会安装多个Python版本,在*nix系统中一般默认就自带了Python2与Python3两个版本,所以在进行Python版本切换时会比较麻烦,pyenv就提供了一种简单的方式。pyenv是一个能简易地在多个Python版本中进行切换的工具,它简单而优雅。pyenv有以下功能:进行全局的Python版本切换为单个项目提供对应的Python版本使用环境变量能让你重写Python版本能在同一时间在不同版本间进行命令搜索拥有以下特点:只依赖Python本身将目录添加进$PATH即可使用能够进行virtualenv管理二、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.1、安装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.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 variableexport 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 versionsbash: 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  CurrentDload  Upload   Total   Spent    Left  Speed00000000--:--:--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.sheval"$(pyenv init -)"# 这里没有找到是因为对当前会话没有生效
[root@ansible1 ~]# pyenv-bash: pyenv: command not found
2.3、安装好了,让我们看看pyenv的内置命令都有哪些我们来看看pyenv都给我们提供了那些版本仅列出部分三、使用pyenv安装python我们这安装两个版本,一个2.7.6 一个3.3.3安装2.7.6版本
[root@ansible1 ~]# pyenv versions* system (set by /root/.pyenv/version)[root@ansible1 ~]# python -VPython 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
四、pyenv的基本应用输入pyenv -h可以查看pyenv的命令
commands    List all available pyenv commandslocal       Set or show the local application-specific Python versionglobal      Set or show the global Python versionshell       Set or show the shell-specific Python versioninstall     Install a Python version using python-builduninstall   Uninstall a specific Python versionrehash      Rehash pyenv shims (run this after installing executables)version     Show the current Python version and its originversions    List all Python versions available to pyenvwhich       Display the full path to an executablewhence      List all Python versions that contain the given executable
我们常用的几个命令:pyenv version #显示当前使用的Pythonpyenv which python #显示当前Python的安裝路径pyenv global <version> #设置默认的Python版本pyenv local <version> #在当前路径创建一个.python-version,以后进入这个目录自动切换为该版本pyenv shell <version> #在当前shell的session中启用某个Python版本,优先级高于global,local 查看当前系统上所安装的python版本
[root@ansible1 ~]# pyenv versionssystem*2.7.6 (set by /root/.python-version)3.3.3
五、pip安装与配置使用yum来安装pip
[root@ansible1 ~]# yum install python-pip
更换pip的源为国内的,为什么,你懂得
[root@ansible1 ~]# ls -a.                .bash_history  .cshrc              .pip      .ssh      .vimrc..               .bash_logout   .distlib            .pki      .tcshrcanaconda-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 ~]#
六、使用pip安装python相关软件你还在使用系统自带的python来敲命令么,你out了,使用ipython吧,命令行下这个就够了看到下面的这个报错,你明白为什么我们前面要安装pyenv了吧
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: