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

yipeiwu_com6年前Python基础

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虚拟环境,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

相关文章

Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)

Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)

今天在看文档的时候,发现pytorch 的conv操作不是很明白,于是有了一下记录 首先提出两个问题: 1.输入图片是单通道情况下的filters是如何操作的? 即一通道卷积核卷积过程...

python opencv之分水岭算法示例

python opencv之分水岭算法示例

本文介绍了python opencv之分水岭算法示例,分享给大家,具体如下: 目标 使用分水岭算法对基于标记的图像进行分割 使用函数cv2.watershed() 原理:...

Python2.x中str与unicode相关问题的解决方法

Python2.x中str与unicode相关问题的解决方法

python2.x中处理中文,是一件头疼的事情。网上写这方面的文章,测次不齐,而且都会有点错误,所以在这里打算自己总结一篇文章。 我也会在以后学习中,不断的修改此篇博客。 这里假设读者已...

python 按不同维度求和,最值,均值的实例

python 按不同维度求和,最值,均值的实例

当变量维数加大时很难想象是怎样按不同维度求和的,高清楚一个,其他的应该就很清楚了,什么都不说了,上例子,例子一看便明白….. a=range(27) a=np.array(a) a=...

Python使用sort和class实现的多级排序功能示例

本文实例讲述了Python使用sort和class实现的多级排序功能。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- import random cl...