Linux(Redhat)安装python3.6虚拟环境(推荐)


Posted in Python onMay 05, 2018

python是3.6

centos 6 64位

1.安装python

2.安装pip

wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
python get-pip.py

可能会报错!!!如:

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

执行python,进入python命令行,输入下面的代码,进行检查:

import ssl

可能还会报错

import ssl
Traceback (most recent call last):
File “”, line 1, in
File “/usr/local/python27/lib/python2.7/ssl.py”, line 60, in
import _ssl # if we can't import it, let the error propagate
ImportError: No module named _ssl

查看是否安装openssl 和 openssl-devel

[xxx@xxx ~]# rpm -aq|grep openssl 
openssl-x.x.xe-x.xxx
openssl-devel-xxx-xxx

如果没有这两个包,就老老实实地安装吧

[root@localhost ~]# yum install openssl-devel -y

这是安装的代码,但是还是会出现错误,我的天哪

这是因为用于linux的yum命令是用python作为命令解释器的,我们把python从linux本来自带的2升级到3了

解决办法:

a.升级yum,算了,一搜太麻烦

b.找到usr/bin/yum,打开将第一行"#!/usr/bin/python" 改为 "#!/usr/bin/python2.6"即可。2.6是我linux自带的版本

接下来就是再次安装上面的缺少的包openssl和openssl-devel

3.重新编译一下python(重装)

有的需要改一下vi /usr/software/Python-3.6.3/Modules/Setup 但我没找到,直接跳过了,但最后也成功了

Socket module helper for socket(2)
_socket socketmodule.c timemodule.c
 Socket module helper for SSL support; you must comment out the other
 socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

然后再重新编译

4.接下来就是执行python get-pip.py,当然可以再测试一下第2步

安装完后,使用 pip -V 报错,如下:

bash: pip: command not found...

这时候怎么办呢??

做一个软连接即可:

首先查下安装路径:

find / -name pip

然做个软连接

ln -sv /usr/local/python/bin/pip /usr/bin/pip

做完就可以用了

5.接下来简单了

a.安装 虚拟环境

pip install virtualenv
pip install virtualenvwrapper (管理虚拟环境的扩展包)
# 创建用来保存虚拟环境的文件夹
mkdir ~/Envs
sudo vi ~/.bashrc
# 添加下面两行
export WORKON_HOME=~/Envs (如果不写会有读写权限问题)
source /usr/local/bin/virtualenvwrapper.sh
# 运行 source ~/.bashrc

b.使用

# 新建
mkvirtualenv -p (python版本) name (创建的虚拟环境可以在上面设置的路径文件夹里面找到)
# 选择 
workon name
# 删除
rmvirtualenv name 
# 退出
deactivate

总结:虚拟环境的建立非常必要,但是因为升级python 操作不当容易引发版本冲突

从而出现各种问题,对后面的工作造成影响,所以一定要注意。

对于找不到 virtualenv 的报错解决

出现这种错误,是因为 virtualenv 这个基础依赖包被安装在了Mac 的默认 Python 目录下,就需要做一个软连接 ln -s。

ERROR: virtualenvwrapper could not find virtualenv in your path

首先还是用 find / -name "virtualenv" 去找到位置,最后这一行就是 virtualenv,可以看见在 Frameworks 目录,即 Mac 自带 Python 所在的位置。

sudo find / -name "virtualenv"
find: /dev/fd/3: Not a directory
find: /dev/fd/4: Not a directory
/Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv

最后进行软连接

$ sudo ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/v

总结

以上所述是小编给大家介绍的Linux(Redhat)安装python3.6虚拟环境,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
Python显示进度条的方法
Sep 20 Python
利用Python实现颜色色值转换的小工具
Oct 27 Python
Python中enumerate函数代码解析
Oct 31 Python
Python实现按当前日期(年、月、日)创建多级目录的方法
Apr 26 Python
在pycharm上mongodb配置及可视化设置方法
Nov 30 Python
Django发送邮件功能实例详解
Sep 02 Python
python中的函数递归和迭代原理解析
Nov 14 Python
Python 序列化和反序列化库 MarshMallow 的用法实例代码
Feb 25 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
Feb 29 Python
详解Pycharm与anaconda安装配置指南
Aug 25 Python
Django 权限管理(permissions)与用户组(group)详解
Nov 30 Python
python 中的jieba分词库
Nov 23 Python
Python3中的json模块使用详解
May 05 #Python
Python 编码规范(Google Python Style Guide)
May 05 #Python
python 编码规范整理
May 05 #Python
PYTHON基础-时间日期处理小结
May 05 #Python
python 日期操作类代码
May 05 #Python
Python批量发送post请求的实现代码
May 05 #Python
PyQt5 pyqt多线程操作入门
May 05 #Python
You might like
php中的数组操作函数整理
2008/08/18 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
解析php类的注册与自动加载
2013/07/05 PHP
详解PHP中的null合并运算符
2015/12/30 PHP
Open and Print a Word Document
2007/06/15 Javascript
DOM 脚本编程中的兄弟节点
2009/10/31 Javascript
javascript中的delete使用详解
2013/04/11 Javascript
jquery 提示信息显示后自动消失的具体实现
2013/12/18 Javascript
jquery获取tr并更改tr内容示例代码
2014/02/13 Javascript
jQuery照片伸缩效果不影响其他元素的布局
2014/05/09 Javascript
javascript动态判断html元素并执行不同的操作
2014/06/16 Javascript
JavaScript实现上下浮动的窗口效果代码
2015/10/12 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法
2016/12/07 Javascript
Bootstrap 响应式实用工具实例详解
2017/03/29 Javascript
Bootstrap table使用方法总结
2017/05/10 Javascript
基于vue v-for 循环复选框-默认勾选第一个的实现方法
2018/03/03 Javascript
Koa2微信公众号开发之消息管理
2018/05/16 Javascript
vue-for循环嵌套操作示例
2019/01/28 Javascript
整理 node-sass 安装失败的原因及解决办法(小结)
2020/02/19 Javascript
[46:55]完美世界DOTA2联赛决赛 FTD vs Phoenix 第三场 11.08
2020/11/11 DOTA
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
Python读写文件方法总结
2015/06/09 Python
Python中实现变量赋值传递时的引用和拷贝方法
2018/04/29 Python
python中强大的format函数实例详解
2018/12/05 Python
Python爬虫文件下载图文教程
2018/12/23 Python
python集合常见运算案例解析
2019/10/17 Python
Flask框架搭建虚拟环境的步骤分析
2019/12/21 Python
html5 浏览器支持 如何让所有的浏览器都支持HTML5标签样式
2012/12/07 HTML / CSS
乡镇庆八一活动方案
2014/02/02 职场文书
匿名信格式范文
2015/05/27 职场文书
现实表现证明材料
2015/06/19 职场文书
七年级上册生物的课件
2019/08/07 职场文书
Golang二维切片初始化的实现
2021/04/08 Golang
再也不用花钱买漫画!Python爬取某漫画的脚本及源码
2021/06/09 Python
《现实主义勇者的王国再建记》第三弹OST全曲试听片段公开
2022/04/04 日漫