1:下载python3源码并安装

wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz
tar zxvf Python-3.6..tgz
cd Python-3.6..tgz
./configure --enable-shared --prefix=/usr/local
make && make altinstall

安装完之后,python3.6就存在于/usr/local/bin/中了。

此时直接运行python3.6还是会报错:

/usr/local/bin/python3.: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory

可以通过设置环境变量解决:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

也可以使用下面的方法:

在目录 /etc/ld.so.conf.d 下,建立 python3.conf
并在 python3.conf 中加入一下内容:

/usr/local/lib/

然后运行:ldconfig

2:使用virtualenv创建虚拟环境

创建虚拟环境:

virtualenv -p /usr/local/bin/python3.6 py36env

执行上述命令后,会在当前目录创建py36env文件夹,该文件夹即为我们创建的虚拟环境。

3:激活虚拟环境

[root@localhost ~]# source py36env/bin/activate
(py36env) [root@localhost ~]# python -V
Python 3.6.4

可以看见在提示符之前增加了(py36env)字段

4:退出虚拟环境 

(py36env) [root@localhost ~]# deactivate
[root@localhost ~]#

附注:Python3的交互环境中,无法使用箭头方向键和tab:

网上查到的答案大多是安装readline包,但是装上之后再交互环境中会发生崩溃:

*** Error in `python': free(): invalid pointer: 0x000000000XXXXXXXX ***

最后,发现需要安装 python-gnureadline包,地址是:https://github.com/ludwigschwardt/python-gnureadline/releases,在Python3环境下安装即可解决。

使用virtualenv使得Python2和Python3并存的更多相关文章

  1. linux下python2升级python3,python2和python3并存

    wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz 解压:tar -xzvf Python-3.6.4.tgz cd Pytho ...

  2. python2和python3并存下的pip使用

    py -2 -m pip install  *.whl py -3 -m pip intall *.wl

  3. 白手起家Django项目发布中篇_Centos下Python2和3并存环境部署

    python环境部署 我们今天学习的内容是如何将Django项目部署到linux服务器上,我们部署的linux系统是centos7首先,我们先在linux上搭建我们的Python3环境: 在这里首先强 ...

  4. Windows下安装python2与python3以及分别对应的virtualenv

    第三次装python2与python3 除此之外还学会了如何在命令行复制代码1.单击右键2.菜单中选择标记3.按住左键选中需要复制的内容4.松开左键5.单击右键 全局中python版本为python2 ...

  5. 用 Anaconda 完美解决 Python2 和 python3 共存问题

    Python3 被越来越多的开发者所接受,同时让人尴尬的是很多遗留的老系统依旧运行在 Python2 的环境中,因此有时你不得不同时在两个版本中进行开发,调试. 如何在系统中同时共存 Python2 ...

  6. Python2和Python3比较分析

    一直有看到网上有讨论Python2和Python3的比较,最近公司也在考虑是否在spark-python大数据开发环境中升级到python3.通过本篇博文记录Python2.7.13和Pthon3.5 ...

  7. Python2 和 Python3 区别汇总

    [Python2 和 Python3 的区别汇总,不定期补充] print 在进行程序调试时用得最多的语句可能就是 print,在 Python 2 中,print 是一条语句,而 Python3 中 ...

  8. Window 同时安装Python2和Python3 终极版

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/vitaminc4/article/det ...

  9. python2 和 python3共存的常见使用(如安装虚拟环境的问题)

    1.安装好python2和python3,配置好全部环境变量 环境变量修改后,需要重新启动命令行才有效 2.如何启动不同版本的python 启动的时候会执行python.exe,python2和pyt ...

随机推荐

  1. 499 单词计数 (Map Reduce版本)

    原题网址:https://www.lintcode.com/problem/word-count-map-reduce/description 描述 使用 map reduce 来计算单词频率http ...

  2. Installing Node.js and Express on Ubuntu

    Installing Node.js and Express on Ubuntu 1. 在nodejs官网上下载Linux Binaries(已经包含了npm):2. 安装Node.js下载后解压,并 ...

  3. WPF DataGrid 数据绑定之"List配合Dictionary"

    WPF 的DataGrid是WPF中最为强大的控件之一,可以通过各种方式绑定 例如通过最为形似的dataTable来绑定 本文则用List<Dictionary<K,V>>来绑 ...

  4. PAT甲级——A1019 General Palindromic Number

    A number that will be the same when it is written forwards or backwards is known as a Palindromic Nu ...

  5. select2下拉内容获取后台数据

    controller(id给select:text给另外的input框) @RequestMapping(value = "findUnit")public @ResponseBo ...

  6. 生成pb模型出错

    raise self.ParseError('Expected identifier or number, got %s.' % result)google.protobuf.text_format. ...

  7. 洛谷 3959 宝藏——枚举+状压dp

    题目:https://www.luogu.org/problemnew/show/P3959 原来写了个不枚举起点的状压dp. #include<iostream> #include< ...

  8. android的AIDL

    一.AIDL的意义:           AIDL全称是Android Interface Definition Language,是android接口定义语言.AIDL就是为了避免我们一遍遍的写一些 ...

  9. Django REST Framework之认证组件

    什么是认证 认证即需要知道是谁在访问服务器,需要有一个合法身份.认证的方式可以有很多种,例如session+cookie.token等,这里以token为例.如果请求中没有token,我们认为这是未登 ...

  10. oracle定制定时执行任务

    1.引言 定制定时执行的任务有两种形式,系统级别和数据库级别, 从操作系统级别来讲, windows系统我们可以使用任务计划来实现, 对于winXP系统,设置步骤如下,开始---设置---控制面板-- ...