python环境安装

python环境安装

pyenv

pyenv 可以帮助你在开发或者生产环境里安装和管理多个 Python 版本。这对于 Python 开发者而言非常有用。

pyenv 优点

  • 让您基于每个用户更改全局Python版本。
  • 为每个项目的Python版本提供支持。
  • 允许您使用环境变量覆盖Python版本。
  • 一次从多个版本的Python中搜索命令。这可能有助于使用tox测试Python版本。

pyenv与pythonbrew,pythonz相比

  • 取决于Python本身。pyenv是由纯shell脚本制作的。没有Python的引导问题。
  • 需要加载到你的shell中。相反,pyenv的垫片方法通过添加目录来实现$PATH。
  • 管理virtualenv。当然,您可以 自己创建virtualenv,或者pyenv-virtualenv 来自动化该过程。

pyenv git地址:https://github.com/pyenv/pyenv

安装pyenv

1. 获取git代码:

[kuchan@python]# pwd
/home/kuchan
[kuchan@python]# git clone https://github.com/pyenv/pyenv.git ~/.pyenv

2. 添加环境变量(此处添加于全局,也可在用户下的~.bashrc里添加):

[kuchan@python]# vim /etc/profile.d/pyenv.sh
export PYENV_ROOT="/home/kuchan/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

读取环境变量:
[kuchan@python]# source /etc/profile.d/pyenv.sh

3. 安装python其它版本
首先安装依赖包:

[kuchan@python]#yum install gcc make patch gdbm-devel openssl-devel sqlite-devel zlib-devel bzip2-devel readline-devel -y

注:当pyenv安装的时间较早,就无法安装最新python版本,是因为~/.pyenv/plugins/python-build/share/python-build/目录下没有相应版本的文件,可以从pyenv的github上获取这个文件并存入。

pyenv 安装 python 有在线安装和离线安装两种方式:

  • 在线安装:
[kuchan@python]# pyenv install 3.5.2
  • 离线安装:
    首先查看.pyenv文件夹下是否有cache文件夹,如果没有新建文件夹:
[kuchan@python]# cd /home/kuchan/.pyenv
[kuchan@ .pyenv]# mkdir cache

将下载好的python包放入cache目录内,无需要解压。

[kuchan@ .pyenv]# ll cache/
-rw-r--r-- 1 root root 15222676 Jun 26  2016 Python-3.5.2.tar.xz

~]# pyenv install 3.5.2
Installing Python-3.5.2...
patching file Lib/venv/scripts/posix/activate.fish


Installed Python-3.5.2 to /home/kuchan/.pyenv/versions/3.5.2


~]# pyenv versions
* system (set by /home/kuchan/.pyenv/version)
  3.5.2

pyenv常用命令:

  • local 设置当前目录及子目录的python版本
  • global 设置全局python版本
  • install 安装指定python版本
  • uninstall 卸载指定python版本
  • version 查看当前所属的python版本
  • versions 查看当前环境所有python版本

virtualenv

virtualenv 创建的环境就是一个别名,其实都是指向特定的python版本中。

[root@6 test]# git clone https://github.com/yyuu/pyenv-virtualenv.git /home/kuchan/.pyenv/plugins/pyenv-virtualenv
[root@6 test]# echo 'eval "$(pyenv virtualenv-init -)"' >> /etc/profile.d/pyenv.sh
[root@6 test]# source /etc/profile.d/pyenv.sh

1. 创建一个3.5.2的环境

[root@6 test]# pyenv virtualenv 3.5.2 env352

2. 查看virtualenv对应的python环境:

[root@6 test]# ll /home/kuchan/.pyenv/version
drwxr-xr-x 7 root root 4096 Jul 25 10:17 3.5.2
lrwxrwxrwx 1 root root   46 Jul 25 10:18 env352 -> /home/kuchan/.pyenv/versions/3.5.2/envs/env352

可以很明显的看到这里的env352只是一个链接至3.5.2。在虚拟环境之中 (env352),这时可以对这个环境进行任意包的安装,且不会对其他环境造成影响

3. 切换和使用新的python虚拟环境:

[root@6 test]# pyenv activate env352
pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior.
(env352) [root@6 test]# 
(env352) [root@6 test]# pyenv version
env352 (set by PYENV_VERSION environment variable)
(env352) [root@6 test]# pyenv versions
  system
  3.5.2
  3.5.2/envs/env352
* env352 (set by PYENV_VERSION environment variable)

4. 退出虚拟环境

(env352) [root@6 test]# pyenv deactivate 
[root@6 test]# 

pip

pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。这些库都是托管在外国的服务器上,导致下载库的时候非常慢,简直无法忍受。

1. 可使用国内的镜像站点来加速:

~]# mkdir ~/.pip
~]# vim ~/.pip/pip.conf
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

原文地址:https://www.cnblogs.com/dance-walter/p/9364652.html