centos7 安装 python3.5

一、 python虚拟环境virtualenv

VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前者提供了一些便利的命令行上的封装。

Virtualenv是一个非常好的virtual python environment builder,他最大的好处是,可以让每一个python项目单独使用一个环境,而不会影响python系统环境,也不会影响其他项目的环境。

Virtualenv可用于创建独立的Python环境,在这些环境里面可以选择不同的Python版本或者不同的packages,并且可以在没有root权限的情况下在环境里安装新套件,互相不会产生任何的影响。

二、为什么要用virtualenv

- 隔离项目之间的第三方包依赖,如A项目依赖django1.2.5,B项目依赖django1.3。

- 为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一翻。在服务器上都不用安装virtualenv,直接将virtualenv创建的目录拷贝到服务器,修改路径,进行虚拟环境迁移就可以用了。

- 还可以用在没有root权限的python环境配置上,如果没有root权限,可以先自己搞一个virtualenv,再在virtualenv中使用pip安装。(系统中没有pip,并且也没有root权限使用sudo apt-get安装)

三、安装的库的位置

env/Lib/site-packages/目录里,而不是在系统的python的Lib/site-packages目录里,这样你就知道为什么虚拟环境是分开的了吧。

Note:virtualenv 创建的虚拟环境与主机的 Python 环境完全无关,你主机配置的库不能在 virtualenv 中直接使用。你需要在虚拟环境中利用 pip install 再次安装配置后才能使用。

四、•安装python3.5可能使用的依赖

yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel

五、•到python官网找到下载路径, 用wget下载

wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz

•解压tgz包

tar -zxvf Python-3.5.1.tgz

•把python移到/usr/local下面

mv Python-3.5.1 /usr/local

•删除旧版本的python依赖

ll /usr/bin | grep python

rm -rf /usr/bin/python

•进入python目录

cd /usr/local/Python-3.5.1/

•配置

./configure

•编译 make

make

•编译,安装

make install

•删除旧的软链接,创建新的软链接到最新的python

rm -rf /usr/bin/python

ln -s /usr/local/bin/python3.5 /usr/bin/python

python -V

安装完以后,创建一个虚拟环境,然后在安装virtualenvwrapper

vim /etc/profile

在最后加入下面内容

PYTHON_HOME=/usr/local/python2.7/bin/

WORKON_HOME=$HOME/.virtualenvs # 放所有虚拟环境的地方

PROJECT_HOME=$HOME/dev # 放所有项目的地方

export PATH=$PATH:$PYTHON_HOME:$WORKON_HOME:$PROJECT_HOME

保存退出

source /usr/local/python2.7/bin/virtualenvwrapper.sh

如果没有配置这个文件,创建的虚拟环境的路径,就是所在的当前路径。

六、virtualenv ENV                     

#ENV 为环境的名字,可以任意设置,其实就是一个文件夹,在home下的用户名文件夹下可以找到。

七、指定virtualenv中的python版本
virtualenv --no-site-packages --python=python2.7 env

–no-site-packages表示不包括系统全局的Python安装包,这样会更令环境更干净

–python=python2.7指定Python的版本未系统已经安装了的Python2.7/

八、source ENV/bin/activate   (激活虚拟环境)

#这样进进入了virtualenv的虚拟开发环境。

进入虚拟环境以后命令行最开始的地方会显示(ENV),代表已经进入了这个环境,然后就可以安装virtualenvwrapper和Django了

九、输入命令行pip install virtualenvwrapper
这里可以不用sudo,因为在virtualenv里,不用管理权限也算是很方便的设计之一。

virtualenvwrapper安装后,它会把virtualenv列为依赖包,所以会自动安装。

十、虚拟环境操作常用命令:

  • workon 切换到环境

  • deactivate 注销当前环境

  • lsvirtualenv 列出所有环境

  • rmvirtualenv 删除环境

  • cpvirtualenv 复制环境

  • cdsitepackages cd到当前环境的site-packages目录

  • lssitepackages 列出当前环境中site-packages内容

  • setvirtualenvproject 绑定现存的项目和环境

  • wipeenv 清除环境内所有第三方包

虚拟环境迁移

当需要将虚拟环境env转移到同一台电脑的另一个目录下时

或者当需要将虚拟环境env1迁移或复制到另一个虚拟环境(可能不在同一台机器上)env2时,首先仍然需要在目的机器上安装pip和virtualenv,然后采用以下方法之一安装其他的package:

1.直接将env1里的文件全部复制到env2里,然后修改涉及路径的文件。此种方法可能正常使用,但显然不是好办法(不过网络不好的时候lz就是用的这个)。

修改的路径主要是虚拟环境ubuntu_env/bin目录下的文件执行程序的路径:如active, pip, ipython等等(几乎所有文件的路径,不过有的命令你不用的可以不改)。

如将虚拟环境ubuntu_env/bin/active中的路径修改一下:

其中的VIRTUAL_ENV路径其实最好修改成现在的绝对路径VIRTUAL_ENV="/media/pika/files/mine/ENV/ubuntu_env";

将虚拟环境ubuntu_env/bin/pip和pip3和pip3.4中的路径修改成绝对路径:#!/home/pipi/ENV/ubuntu_env/bin/python3

注意最好不要将路径修改成相对路径。如果修改的ipython执行路径为相对路径#!./bin/python3,是相对这个ipython.py执行的路径,激活virtual env后如果在另一个目录下输入python就会出错找不到或者直接调用系统中的python了,而不是virtual env中的python,而原始的默认路径使用绝对路径就可以在virtual env激活后在任意目录都可以执行ipython而不出错!

2. 使用requirements.txt

进入原虚拟环境env1,然后执行pip freeze > requirements.txt将包依赖信息保存在requirements.txt文件中。

最好手动调整一下顺序,比如numpy和scipy要在matplotlib前面安装;另外如果想安装最新版本的,再将后面的版本号==1.9.1什么的删除。

然后进入目的虚拟环境env2,执行pip install -r requirements.txt,pip就会自动从网上下载并安装所有包。

虚拟环境env2如果是env1的拷贝,最好先pip uninstall -ry requirements.txt,再pip install -r requirements.txt

3.pip默认会从pypi服务器(http://pypi.python.org/simple)下载包的安装文件,如果目的机器无法连外网,则可以采用以下办法:
3.1搭建自己的pypi服务器。专业的,可以使用第三方的软件包来搭建一个完整的pypi镜像服务器,参考http://www.worldhello.net/2011/03/14/2357.html。更快速的方法只需要一条命令python -m SimpleHTTPServer即可完成搭建服务器,具体的目录结构可参考原pypi服务器,简而言之,就是把安装文件打包放入目录即可。搭建好服务器之后,在目的虚拟环境中,就可以使用pip来安装了,命令如:pip install -i http://127.0.0.1:8000/ -r requirements.txt
3.2如果你实在不想搭建pypi服务器,也有办法。首先将所有包的安装文件下载下来,可以手动下载,也可以使用pip,如pip install -d /path/to/save/ -r requirements.txt,然后自己修改requirements.txt文件,将每一行改成对应的包的安装文件的路径。最后在目的虚拟环境中使用pip安装,如pip install -r requirements.txt即可。

3.3还有一种途径,就是pip提供的bundle选项。首先执行pip bundle MyEnv.pybundle -r requirements.txt,将生成一个MyEnv.pybundle文件,该文件夹包含所有包的安装文件(注意必须后缀名必须是.pybundle),默认是重新从pypi服务器下载安装文件的,如果愿意,也可以利用3.1中的方法,指定本地的pypi服务器。然后在目的虚拟环境中执行pip install MyEnv.pybundle即可

所以说,lz还是更喜欢docker中配置的python开发环境。

虚拟环境迁移出错

方法1虚拟环境迁移后包引入出错

from scipy import stats

ImportError: liblapack.so.3: cannot open shared object

这时只需要pip install scipy重新安装一下就ok了。

ImportError: libBLT.2.4.so.8.6: cannot open shared object file: No such file or directory, please install the python3-tk package

也要重新安装matplotlib

所以最好使用方法2迁移。

下面关于Python的文章您也可能喜欢,不妨看看:

Linux下Python的安装以及注意事项  http://www.linuxidc.com/Linux/2015-11/124861.htm

Ubuntu 14.04 下安装使用Python rq模块  http://www.linuxidc.com/Linux/2015-08/122441.htm

无需操作系统直接运行 Python 代码  http://www.linuxidc.com/Linux/2015-05/117357.htm

CentOS上源码安装Python3.4  http://www.linuxidc.com/Linux/2015-01/111870.htm

《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版] http://www.linuxidc.com/Linux/2013-06/85425.htm

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码] http://www.linuxidc.com/Linux/2013-11/92693.htm

Python脚本获取Linux系统信息 http://www.linuxidc.com/Linux/2013-08/88531.htm

在Ubuntu下用Python搭建桌面算法交易研究环境 http://www.linuxidc.com/Linux/2013-11/92534.htm

Python 语言的发展简史 http://www.linuxidc.com/Linux/2014-09/107206.htm

centos7 安装 python3.5的更多相关文章

  1. Centos7 安装python3

    Centos7 安装python3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #安装sqlite-devel yum -y ...

  2. centos7安装 python3.6,且保留2.7版本

    CENTOS7安装PYTHON3.6 1. 安装python3.6可能使用的依赖# yum install openssl-devel bzip2-devel expat-devel gdbm-dev ...

  3. CentOS7 安装Python3,开发SocketIO 客户端

    CentOS7安装Python3,开发SocketIO 客户端 参考:https://blog.csdn.net/lovefengruoqing/article/details/79284573 步骤 ...

  4. centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题。

    centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题. 原因:yum调用Python,启动程/usr/bin/yum就是一个python ...

  5. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  6. centos7安装python3.7

    Centos7安装Python3的方法   由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. [root@VM_105_217_ ...

  7. CentOS7 安装Python3.6.8

    CentOS7 安装Python3.6.8 1. 安装依赖环境 yum -y groupinstall "Development tools" yum -y install zli ...

  8. 解决Centos7安装python3后pip工具无法使用

    问题描述: Centos7安装python3,正常流程全部配置完成,python3,pip3的软链接也建立了 但是python3可以正常使用,而pip3报错,无法找到文件或目录 解决方法: which ...

  9. centos7安装python3.6独立的virtualenv环境

    centos7安装python3.6独立的virtualenv环境 1.编译安装python3.6环境# 安装依赖yum -y install zlib-devel bzip2-devel opens ...

随机推荐

  1. iOS开发UI篇—懒载入

    iOS开发UI篇-懒载入 1.懒载入基本 懒载入--也称为延迟载入,即在须要的时候才载入(效率低,占用内存小).所谓懒载入,写的是其get方法. 注意:假设是懒载入的话则一定要注意先推断是否已经有了. ...

  2. Laravel 设置语言不生效的问题

    使用了validate 验证,提示错误默认是 英文的.将en 改为zh-CN 后 运行 composer require "overtrue/laravel-lang:~3.0"时 ...

  3. construct-binary-tree-from-preorder-and-inorder-traversal——前序和中序求二叉树

    Given preorder and inorder traversal of a tree, construct the binary tree. Note:  You may assume tha ...

  4. C结构体之位域(位段)(转)

    有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位.例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可.为了节省存储空间,并使处理简便,C语言又提供了一种数据结构 ...

  5. 【每日Scrum】第二天(4.23) TD学生助手Sprint2站立会议

    站立会议 组员 昨天 今天 困难 签到 刘铸辉 (组长) 昨天觉得整个界面不适合后期功能扩展,所以进行了整体整改 今天主要看了多事件处理的内容然后改了下界面, 遇到的困难就是正在寻找用户交互性比较好的 ...

  6. java监听器演示样例

    监听器的原理是观察者模式.就像明星(事件源)聚拢了一群粉丝(观察者).当明星有啥举动的时候会通过粉丝们报道出去. 订阅信息.计算器button都是该原理的应用. 以下写了一个监听器的小样例: pack ...

  7. IDEA搭建Android wear开发环境,Android wear,I'm comming!

    随着google公布了android wear这个东西.然后又有了三星的gear,LG的G watch以及moto 360,苹果由公布了apple watch.未来可能在智能手表行业又有一场战争. 当 ...

  8. 发送邮件程序报错454 Authentication failed以及POP3和SMTP简介

    一.发现问题 在测试邮件发送程序的时候,发送给自己的QQ邮箱,程序报错454 Authentication failed, please open smtp flag first. 二.解决问题 进入 ...

  9. VMware Workstation 14创建mac-10.12虚拟机详细步骤

     一.VMware和unlocker的下载和安装 链接:https://pan.baidu.com/s/15Z4DqRENt6JdyfJef_VWSw 密码:40vw 1.安装VMware Works ...

  10. Mixtures of Gaussians and the EM algorithm

    http://cs229.stanford.edu/ http://cs229.stanford.edu/notes/cs229-notes7b.pdf