安装过程

配置yum源

# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# yum -y install yum-utils

# yum install wget -y 

# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 

安装git

# yum install -y git

安装Python环境依赖

# yum install -y gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel

添加用户

# useradd python

# echo |passwd --stdin python

# su - python

安装pyenv

$  curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer|bash

添加环境变量

$ vim .bash_profile
# .bash_profile # Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH
export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)" $ . .bash_profile

查看python版本

$ python -V
Python 2.7.

Pyenv的命令

$ pyenv
pyenv 1.2.
Usage: pyenv <command> [<args>] Some useful pyenv commands are:
activate Activate virtual environment
commands List all available pyenv commands
deactivate Deactivate virtual environment
doctor Verify pyenv installation and development tools to build pythons.
exec Run an executable with the selected Python version
global Set or show the global Python version(s)
help Display help for a command
hooks List hook scripts for a given pyenv command
init Configure the shell environment for pyenv
install Install a Python version using python-build
local Set or show the local application-specific Python version(s)
prefix Display prefix for a Python version
rehash Rehash pyenv shims (run this after installing executables)
root Display the root directory where versions and shims are kept
shell Set or show the shell-specific Python version
shims List existing pyenv shims
uninstall Uninstall a specific Python version
version Show the current Python version(s) and its origin
--version Display the version of pyenv
version-file Detect the file that sets the current pyenv version
version-name Show the current Python version
version-origin Explain how the current Python version is set
versions List all Python versions available to pyenv
virtualenv Create a Python virtualenv using the pyenv-virtualenv plugin
virtualenv-delete Uninstall a specific Python virtualenv
virtualenv-init Configure the shell environment for pyenv-virtualenv
virtualenv-prefix Display real_prefix for a Python virtualenv version
virtualenvs List all Python virtualenvs found in `$PYENV_ROOT/versions/*'.
whence List all Python versions that contain the given executable
which Display the full path to an executable

虚拟环境下安装Python3.5.3版本

1、从官网下载(非常慢,不建议)

$ pyenv install 3.5. -v
/tmp/python-build.20200718063111.6245 ~
Downloading Python-3.5..tar.xz...
-> https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tar.xz

2、传包的方式

$ ls -a
. .. .bash_history .bash_logout .bash_profile .bashrc .pki .pyenv .viminfo $ mkdir .pyenv/cache 将下载好的包放入cache目录,然后执行安装命令 $ pyenv install 3.6. -v
/tmp/python-build.20200718070338.7001 ~/.pyenv
/tmp/python-build.20200718070338.7001/Python-3.6. /tmp/python-build.20200718070338.7001 ~/.pyenv
Installing Python-3.6....
checking build system type... x86_64-pc-linux-gnu

pyenv版本控制

当前登录用户全局生效

[python@localhost .pyenv]$ pyenv version
system (set by /home/python/.pyenv/version) [python@localhost .pyenv]$ python -V
Python 2.7.

更改全局版本(企业中禁用)

$ pyenv version
3.6. (set by /home/python/.pyenv/version) $ python -V
Python 2.7.

打开新终端查看版本信息

[python@localhost ~]$ pyenv versions
system
* 3.6. (set by /home/python/.pyenv/version) [python@localhost ~]$ python -V
Python 3.6.

切回原版本

[python@localhost ~]$ pyenv global system

[python@localhost ~]$ pyenv versions
* system (set by /home/python/.pyenv/version)
3.6.

注意:这里的global参数作用的是python用户,而非root用户。如果是root用户安装的,那么不要用global,影响很大

修改当前shell的Python版本

[python@localhost .pyenv]$ pyenv shell 3.6.

[python@localhost .pyenv]$ pyenv versions
system
* 3.6. (set by PYENV_VERSION environment variable) [python@localhost .pyenv]$ python -V
Python 2.7.

新终端查看版本

[python@localhost ~]$ pyenv versions
* system (set by /home/python/.pyenv/version)
3.6.

[python@localhost ~]$ python -V
Python 2.7.
这种方法是当前shell生效的,如果当前shell关闭了,版本设置就无效了,再打开shell的时候版本就变回原来的了,还需要重新再设置一次,非常麻烦,推荐使用下面的方法

Local(当前文件夹生效)

创建项目目录

[python@localhost .pyenv]$ cd
[python@localhost ~]$ mkdir zh/projects -p
[python@localhost ~]$ cd zh/projects/

新终端切换到项目目录

[python@localhost ~]$ cd zh/projects/

新终端设置当前目录版本

[python@localhost projects]$ pyenv local 3.6.

[python@localhost projects]$ pyenv versions
system
* 3.6. (set by /home/python/zh/projects/.python-version) [python@localhost projects]$ python -V
Python 3.6.

查看其它目录版本

[python@localhost cmdb]$ cd

[python@localhost ~]$ pyenv versions
* system (set by /home/python/.pyenv/version)
3.6. [python@localhost ~]$ python -V
Python 2.7.

查看子目录版本

[python@localhost projects]$ mkdir cmdb

[python@localhost projects]$ cd zh/projects/cmdb

[python@localhost cmdb]$ pyenv versions
system
* 3.6. (set by /home/python/zh/projects/.python-version) [python@localhost cmdb]$ python -V
Python 3.6.

虚拟环境(解决打包问题)

安装3.5.3版本

[python@localhost ~]$ cd .pyenv/cache/

[python@localhost cache]$ ll
total
-rw-r--r--. python python Dec Python-3.5..tar.xz
-rw-r--r--. python python Nov Python-3.6..tar.xz [python@localhost projects]$ pyenv install 3.5. -v [python@localhost ~]$ ll .pyenv/versions
total
drwxr-xr-x. python python Jul : 3.5.
drwxr-xr-x. python python Jul : 3.6.

创建虚拟环境

[python@localhost cmdb]$ pyenv virtualenv 3.5. zh353
Requirement already satisfied: setuptools in /home/python/.pyenv/versions/3.5./envs/zh353/lib/python3./site-packages
Requirement already satisfied: pip in /home/python/.pyenv/versions/3.5./envs/zh353/lib/python3./site-packages

查看版本信息

[python@localhost cmdb]$ pyenv versions
system
3.5.
3.5./envs/zh353
* 3.6. (set by /home/python/zh/projects/.python-version)
zh353

修改当前项目目录的Python版本

[python@localhost cmdb]$ pyenv local zh353 

(zh353) [python@localhost cmdb]$ pyenv versions
system
3.5.
3.5./envs/zh353
3.6.
* zh353 (set by /home/python/zh/projects/cmdb/.python-version)

创建新的项目目录并设置版本

(zh353) [python@localhost cmdb]$ mkdir ../web
(zh353) [python@localhost cmdb]$ cd ../web [python@localhost web]$ pyenv local 3.6.
[python@localhost web]$ pyenv versions
system
3.5.
3.5./envs/zh353
* 3.6. (set by /home/python/zh/projects/web/.python-version)
zh353

pyenv虚拟环境安装的更多相关文章

  1. (转)Python全能自动化开发环境软件之pyenv的安装说明

    原文:http://www.magedu.com/73921.html pyenv,是一款特别好用的Python版本管理器,程序员可以建立不同的目录,在不同的目录里分别运行不同版本的Python, 并 ...

  2. Pyenv虚拟环境的创建(虚拟机)

    创建pyenv虚拟环境 sudo yum install openssl* 安装其所需要的库文件 git clone https://github.com/yyuu/pyenv.git ~/.pyen ...

  3. linux下pyenv的安装和使用

    一:pyenv介绍   项目地址:https://github.com/pyenv/pyenv   pyenv lets you easily switch between multiple vers ...

  4. python高级(4)—— 虚拟环境安装使用

    虚拟环境 什么是虚拟环境 对电脑稍微有点常识的朋友相信都玩过,比如VMware,virtualbox,或者你用电脑端的模拟器玩手机端的游戏也是一样,其实就是一个假的空间,在Python这里,虚拟环境就 ...

  5. 一、自动化平台搭建-python虚拟环境安装

    主要知识点介绍: 安装django环境 创建django项目 设计模型类并利用模型类和数据库进行交互 使用django后台管理数据 编写视图函数,进行URL配置 模板的使用 图书-英雄案例完成 1.虚 ...

  6. django虚拟环境安装

    虚拟环境主要是防止不同版本的模块之间的冲突,维护多个项目的时候这个非常重要. 虚拟环境的安装 sudo apt install python-virtualenv 虚拟环境安装成功后,直接创建一个虚拟 ...

  7. 第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块

    第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtuale ...

  8. 1.部署虚拟环境安装linux系统

    第1章 部署虚拟环境安装linux系统 章节简述: 本章从零基础详细讲解了虚拟机软件与红帽Linux系统,完整演示了VM虚拟机的安装与配置过程,以及红帽RHEL 7系统的安装.配置过程和初始化方法.此 ...

  9. django第五天(虚拟环境安装和视图层相关)

    django第5天 虚拟环境安装 ''' 1.通过pip3安装虚拟环境: -- pip3 install virtualenv 2.前往目标文件夹: -- cd 目标文件夹 (C:\Virtualen ...

随机推荐

  1. Python的多继承问题-MRO和C3算法

    大部分内容转载自C3 线性化算法与 MRO 理解Python中的多继承 Python 中的方法解析顺序(Method Resolution Order, MRO)定义了多继承存在时 Python 解释 ...

  2. idea的maven项目无法引入junit类

    本机:java版本:1.8 pom中是junit版本:4.12 出现问题:在使用@Test 无法引入 : org.junit.Test; 解决方法:junit在pom.xml改为 4.12-beta- ...

  3. springMvc接口开发--对访问的restful api接口进行拦截实现功能扩展

    1.视频参加Spring Security开发安全的REST服务\PART1\PART1 3-7 使用切片拦截REST服务三通it学院-www.santongit.com-.mp4 讲的比较的经典,后 ...

  4. 03.基于测试开发讲解和Cobertura框架介绍

    首先我们先 CREATE TABLE `t_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(200) DEFAULT ...

  5. django 中间键 csrf 跨站请求伪造

    django中间件和auth模块   Django中间件 由django的生命周期图我们可以看出,django的中间件就类似于django的保安,请求一个相应时要先通过中间件才能到达django后端( ...

  6. 宝贝,来,满足你,二哥告诉你学 Java 应该买什么书?

    (这次的标题是不是有点皮,对模仿好朋友 guide 哥的,我也要皮一皮) 高尔基说过,对吧?宝贝们,"书籍是人类进步的阶梯",不管学什么,买几本心仪的书读一读,帮助还是非常大的.尽 ...

  7. [javascript]js原型链以及原型链继承

    基础的三个要素: 函数 ,函数实例,实例原型. 实例原型相当于 父类, 函数相当于构造函数 举例: class Fn extends Fn.prototype{ } 实例: let f = new F ...

  8. SpringBoot + MyBatis + MySQL 读写分离实战

    1. 引言 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做.因此,一般来讲,读写分离有两种实现方式.第一种是依靠 ...

  9. python之re模块(正则表达式)

    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. re 模块使 Python 语言拥有全部的正则表达式功能. 正则表达式中,普通字符匹配本身,非打印字符\n .\t等 ...

  10. 浏览器缓存_HTTP强缓存和协商缓存

    浏览器缓存 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档. 所以根据上面的特点,浏览器缓存有下面的优点: 减少冗余的数据传 ...