python虚拟环境完美部署教程


Posted in Python onAugust 06, 2019

一、前言

预处理

建议仔细看完本文章之后在进行操作,避免失误,本环境可以用于生产环境,有利于生产环境python之间的环境隔离,互相不会产生环境冲突;pyenvpyenv-virtualenv可以完美结合使用,具体使用情况看项目具体要求;

依赖环境要求

yum install readline readline-devel readline-static -y
yum install openssl openssl-devel openssl-static -y
yum install sqlite-devel -y
yum install bzip2-devel bzip2-libs -y
yum install libffi-devel -y

二、pyenv安装

pyenv获取

[root@tset ~]# git clone https://github.com/yyuu/pyenv.git ~/.pyenv
Cloning into '/root/.pyenv'...
remote: Enumerating objects: 17352, done.
remote: Total 17352 (delta 0), reused 0 (delta 0), pack-reused 17352
Receiving objects: 100% (17352/17352), 3.37 MiB | 24.00 KiB/s, done.
Resolving deltas: 100% (11818/11818), done.

配置pyenv系统环境

[root@tset ~]# vim ~/.bashrc
## add by liuchao at 20190806     //添加以下内容
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)" 
//保存退出
[root@tset ~]# source ~/.bashrc    //执行配置生效

三、pyenv使用

pyenv 安装python版本

个人建议:自己在python官网下载想要安装的版本;首先要在pyenv目录下创建cache文件夹,用来存放python安装包。(可以解决下载安装慢的问题)

[root@tset ~]# mkdir ~/.pyenv/cache        //创建cache文件夹,将下载的python安装包存放,
[root@tset ~]# cd ~/.pyenv/cache/
[root@tset cache]# ls               //python安装包后缀名必须是.tar.xz
Python-2.7.16.tar.xz Python-3.7.3.tar.xz
pyenv install

[root@tset cache]# cd
[root@tset ~]# pyenv install 3.7.3 -v
/tmp/python-build.20190806095432.10104 ~
/tmp/python-build.20190806095432.10104/Python-3.7.3 /tmp/python-build.20190806095432.10104 ~
Installing Python-3.7.3...
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for python3.7... no
checking for python3... no
checking for python... python
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... checking for --without-gcc... no
checking for --with-icc... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for a sed that does not truncate output... /usr/bin/sed
checking for --with-cxx-main=<compiler>... no
checking for g++... no
configure:

检查是否安装成功

[root@tset ~]# pyenv versions
* system (set by /root/.pyenv/version)
 3.7.3

更新数据库

[root@tset ~]# pyenv rehash

pyenv切换python版本

[root@tset ~]# pyenv global 2.7.8 // 全局
[root@tset ~]# pyenv local 2.7.8  // 当前目录下
[root@tset ~]# pyenv shell 2.7.8  // shell版本
[root@tset ~]# pyenv shell --unset // 取消当前的shell设定的版本
#创建垫片路径(为所有已安装的可执行文件创建 shims,如:~/.pyenv/versions/*/bin/*,因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令)
[root@tset ~]# pyenv rehash

安装与卸载

[root@tset ~]# pyenv install -l # 查看可安装的版本
[root@tset ~]# pyenv install 2.7.8 # 安装python2.7.8的版本
[root@tset ~]# pyenv rehash # 安装模块后
[root@tset ~]# pyenv pyenv uninstall 2.7.8 # 卸载

四、pyenv-virtualenv

安装pyenv-virtualenv

[root@tset ~]# git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
Cloning into '/root/.pyenv/plugins/pyenv-virtualenv'...
remote: Enumerating objects: 2064, done.
remote: Total 2064 (delta 0), reused 0 (delta 0), pack-reused 2064
Receiving objects: 100% (2064/2064), 580.31 KiB | 17.00 KiB/s, done.
Resolving deltas: 100% (1413/1413), done.

环境配置

[root@tset ~]# echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
[root@tset ~]# source ~/.bash_profile

使用方法

[root@tset ~]# pyenv virtualenv 2.7.10 env-2.7.10  //创建虚拟环境
[root@tset ~]# pyenv activate env-2.7.10  //激活虚拟环境
[root@tset ~]# pyenv deactivate  //退出虚拟环境
[root@tset ~]# pyenv uninstall env-2.7.10  //删除虚拟环境
[root@tset ~]# rm -rf ~/.pyenv/versions/env-2.7.10  //删除真实目录

总结

以上所述是小编给大家介绍的python虚拟环境完美部署教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python类和继承用法实例
Jul 07 Python
浅谈python中的面向对象和类的基本语法
Jun 13 Python
Python中字符串的处理技巧分享
Sep 17 Python
linux环境下python中MySQLdb模块的安装方法
Jun 16 Python
Python实现的双色球生成功能示例
Dec 18 Python
Python中的单下划线和双下划线使用场景详解
Sep 09 Python
使用Django搭建网站实现商品分页功能
May 22 Python
将keras的h5模型转换为tensorflow的pb模型操作
May 25 Python
Python定时任务APScheduler原理及实例解析
May 30 Python
深入浅析python 中的self和cls的区别
Jun 20 Python
用opencv给图片换背景色的示例代码
Jul 08 Python
python 监控logcat关键字功能
Sep 04 Python
python批量图片处理简单示例
Aug 06 #Python
Python实用库 PrettyTable 学习笔记
Aug 06 #Python
浅谈django2.0 ForeignKey参数的变化
Aug 06 #Python
Python中调用其他程序的方式详解
Aug 06 #Python
运用PyTorch动手搭建一个共享单车预测器
Aug 06 #Python
基于python实现自动化办公学习笔记(CSV、word、Excel、PPT)
Aug 06 #Python
django将数组传递给前台模板的方法
Aug 06 #Python
You might like
php 删除无限级目录与文件代码共享
2008/11/22 PHP
php中explode函数用法分析
2014/11/15 PHP
PHP中的switch语句的用法实例详解
2015/10/21 PHP
浅谈php调用python文件
2019/03/29 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
js onpropertychange输入框 事件获取属性
2009/03/26 Javascript
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
Google 地图类型详解及示例代码
2016/08/06 Javascript
jQuery实现CheckBox全选、全不选功能
2017/01/11 Javascript
Angular 4依赖注入学习教程之ClassProvider的使用(三)
2017/06/04 Javascript
vue-router 导航钩子的具体使用方法
2017/08/31 Javascript
基于Cookie常用操作以及属性介绍
2017/09/07 Javascript
JS获取input[file]的值并显示在页面的实现方法
2018/03/09 Javascript
element上传组件循环引用及简单时间倒计时的实现
2018/10/01 Javascript
node.js的http.createServer过程深入解析
2019/06/06 Javascript
VUE路由动态加载实例代码讲解
2019/08/26 Javascript
[41:11]完美世界DOTA2联赛PWL S2 Inki vs Magma 第一场 11.22
2020/11/24 DOTA
Python的lambda匿名函数的简单介绍
2013/04/25 Python
Python的Django框架中TEMPLATES项的设置教程
2015/05/29 Python
Python中遍历字典过程中更改元素导致异常的解决方法
2016/05/12 Python
Pandas中把dataframe转成array的方法
2018/04/13 Python
python Spyder界面无法打开的解决方法
2018/04/27 Python
Python爬虫——爬取豆瓣电影Top250代码实例
2019/04/17 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
pymysql的简单封装代码实例
2020/01/08 Python
Python文字截图识别OCR工具实例解析
2020/03/05 Python
基于Django快速集成Echarts代码示例
2020/12/01 Python
PyCharm 光标变成黑块的解决方式
2021/02/06 Python
土耳其时尚购物网站:Morhipo
2017/09/04 全球购物
爱与责任演讲稿
2014/05/20 职场文书
家长学校培训材料
2014/08/20 职场文书
安全保卫工作竞聘材料
2014/08/25 职场文书
小学推普周活动总结
2015/05/07 职场文书
Redis超详细讲解高可用主从复制基础与哨兵模式方案
2022/04/07 Redis