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

相关文章

Tensorflow之Saver的用法详解

Tensorflow之Saver的用法详解

Saver的用法 1. Saver的背景介绍 我们经常在训练完一个模型之后希望保存训练的结果,这些结果指的是模型的参数,以便下次迭代的训练或者用作测试。Tensorflow针对这一需求提...

pytorch构建多模型实例

pytorch构建双模型 第一部分:构建"se_resnet152","DPN92()"双模型 import numpy as np from functools import pa...

Python调用C++程序的方法详解

前言 大家都知道Python的优点是开发效率高,使用方便,C++则是运行效率高,这两者可以相辅相成,不管是在Python项目中嵌入C++代码,或是在C++项目中用Python实现外围功能...

Python实现批量读取图片并存入mongodb数据库的方法示例

本文实例讲述了Python实现批量读取图片并存入mongodb数据库的方法。分享给大家供大家参考,具体如下: 我的图片放在E:\image\中,然后使用python将图片读取然后,显示一...

TensorFlow实现iris数据集线性回归

TensorFlow实现iris数据集线性回归

本文将遍历批量数据点并让TensorFlow更新斜率和y截距。这次将使用Scikit Learn的内建iris数据集。特别地,我们将用数据点(x值代表花瓣宽度,y值代表花瓣长度)找到最优...