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实现的排列组合计算操作示例
Oct 13 Python
Python文件操作基本流程代码实例
Dec 11 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
Apr 05 Python
python获取代理IP的实例分享
May 07 Python
python实现Windows电脑定时关机
Jun 20 Python
Python enumerate函数遍历数据对象组合过程解析
Dec 11 Python
详解Python Opencv和PIL读取图像文件的差别
Dec 27 Python
Pytorch通过保存为ONNX模型转TensorRT5的实现
May 25 Python
Python如何获取文件路径/目录
Sep 22 Python
Python使用Pygame绘制时钟
Nov 29 Python
Python 求向量的余弦值操作
Mar 04 Python
PyTorch中permute的使用方法
Apr 26 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面向对象全攻略 (十六) 对象的串行化
2009/09/30 PHP
php快速url重写更新版[需php 5.30以上]
2010/04/25 PHP
php读取3389的脚本
2014/05/06 PHP
PHP如何通过AJAX方式实现登录功能
2015/11/23 PHP
PHP使用socket发送HTTP请求的方法
2016/02/14 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
jQuery实现id模糊查询的小例子
2013/03/19 Javascript
使用jquery的ajax需要注意的地方dataType的设置
2013/08/12 Javascript
jquery获取当前点击对象的value方法
2014/02/28 Javascript
js中的json对象详细介绍
2014/10/29 Javascript
javaScript实现滚动新闻的方法
2015/07/30 Javascript
javascript基本算法汇总
2016/03/09 Javascript
JavaScript 基础函数_深入剖析变量和作用域
2016/05/18 Javascript
JQuery点击行tr实现checkBox选中的简单实例
2016/05/26 Javascript
Bootstrap 附加导航(Affix)插件实例详解
2016/06/01 Javascript
JS传递对象数组为参数给后端,后端获取的实例代码
2016/06/28 Javascript
vue弹窗消息组件的使用方法
2020/09/24 Javascript
详解javascript对数组和json数组的操作
2019/04/15 Javascript
在weex中愉快的使用scss的方法步骤
2020/01/02 Javascript
ES2020让代码更优美的运算符 (?.) (??)
2021/01/04 Javascript
Python设计模式之代理模式实例
2014/04/26 Python
python简单获取本机计算机名和IP地址的方法
2015/06/03 Python
基于Django模板中的数字自增(详解)
2017/09/05 Python
Python读取Excel一列并计算所有对象出现次数的方法
2020/09/04 Python
CSS3标注引用的出处和来源的方法
2020/02/25 HTML / CSS
汉森冲浪板:Hansen Surfboards
2018/05/19 全球购物
比利时的在线灯具店:Lampen24.be
2019/07/01 全球购物
介绍一下gcc特性
2012/01/20 面试题
计算机工程学院个人求职信
2013/10/05 职场文书
公司采购主管岗位职责
2014/06/17 职场文书
2014年学校后勤工作总结
2014/12/06 职场文书
“5.12”护士节主持词
2015/07/04 职场文书
2015国庆节感想
2015/08/04 职场文书
2019最新激励员工口号大全!
2019/06/28 职场文书
python 调用js的四种方式
2021/04/11 Python
剑指Offer之Java算法习题精讲二叉树专项训练
2022/03/21 Java/Android