Linux(Redhat)安装python3.6虚拟环境(推荐)
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虚拟环境,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
- dom4j 使用总结
- 快速对表的某字段赋递增的数值
- SQL SERVER修改函数名引起的问题
- SQL Server安全(1/11):SQL Server安全概述
- SQL Server安全(2/11):身份验证(Authentication)
- SQL Server安全(3/11):主体和安全对象(Principals and Securables)
- 在SQL Server里如何进行页级别的恢复
- 你可能不知道的字符比较中的“秘密”
- c++实现简单计算器
- re模块(正则表达式)
- Python学习——collections系列
- 为stackGan一个工程创建一个虚拟环境,python 2.7 tensorflow0.12-tensorflow 1.01
- linux 普通操作,查看资源使用情况
- Python 函数使用记录,join函数和os.path.join用法
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Redis | Redis 集合相关命令
- java之生产者和消费者问题
- springboot开发之thymeleaf模板引擎
- Nginx | Nginx增加模块
- springboot之整合druid并配置数据源监控
- c++之程序流程控制
- linux使用 source etc/profile
- c++之数组
- c++之指针
- c++之函数
- kafka的生产者分区机制原理(二)
- (17)Bash别名与快捷键
- (16)Bash历史命令与补全
- 【python-leetcode325-滑动窗口法】最大子数组之和为k
- 爬取51job出现can only concatenate str (not “NoneType“) to str