前言

在Linux系统上一般会预安装python,但有时候版本过低,通过apt或yum无法安装较新的python版本,只能通过编译python源码进行安装。然而通过源码安装会依赖大量的库,手动安装这些依赖库也是一件很烦心的事情。而且还可能出现依赖库冲突的问题,装不好可能会破坏系统的正常使用。

有时间的小伙伴可以试试通过源码编译安装,遇到问题然后解决问题也是一件很有成就感的事情。安装过程可能会一次性成功,也可能弄一天也安装不好,最好使用虚拟机,安装之前先做个快照,方便安装失败进行系统还原。下面简单说明一下源码安装过程。

python源码安装

进入Python官网,选择Downloads选项里面的Source code,选择合适的版本下载,比如3.6.7版本,下载后是一个Python-3.6.7.tar.xz文件。

然后解压 tar -xvf Python-3.6..tar.xz

运行 ./configure --prefix=/usr ,--prefix参数指定安装的目录,默认是/usr/local。

然后  make ,编译完成后(当然是一切顺利的情况下)运行 make altinstall 进行安装。关于 make install 和 make altinstall 的区别可以查看Python官网文档说明

好了,源码编译安装就介绍到这里,这不是今天要讲的内容。

Anaconda

在python编码编译安装过程中,你可能会安装很多依赖库,是不是有点心烦呢。现在介绍anaconda,可以不再让你心烦意乱,轻轻松松安装python环境(而且是任意python版本)。

我这里不在过多的介绍anaconda,详细介绍请看anaconda官网,学习一个工具或产品,或者遇到问题,要先去查看官网文档,一定要养成这个好的习惯。

安装Anaconda

官网下载安装包,这里选择的是Linux版本的Python3 64位。(建议选择Python3,Python2很快就停止维护了,除了一些以前用Python2开发好的现在需要维护的程序,现在统统都换成Python3吧)

下载完成后是一个Anaconda3-2018.12-Linux-x86_64.sh文件,下面开始安装吧

在Linux终端上运行 bash ~/Anaconda3-2018.12-Linux-x86_64.sh 进入安装交互模式,出现

Welcome to Anaconda3 2018.12

In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>

按enter键继续,出现 Anaconda End User License Agreement 等信息,一直按enter翻到最后,出现

Do you accept the license terms? [yes|no]
[no] >>>

输入yes继续,出现

Anaconda3 will now be installed into this location:
/root/anaconda3 - Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below [/root/anaconda3] >>>

让我们选择安装路径,默认是/root/anaconda3,这里输入/opt/anaconda3安装到/opt目录下,

过程会安装很多依赖库,这里只是截取了一部分,这些依赖库不会和系统中的库冲突的。

installing: icu-58.2-h9c2bf20_1 ...
installing: jbig-2.1-hdba287a_0 ...
installing: jpeg-9b-h024ee3a_2 ...
installing: libffi-3.2.-hd88cf55_4 ...
installing: liblief-0.9.-h7725739_1 ...
installing: libsodium-1.0.-h1bed415_0 ...
installing: libtool-2.4.-h7b6447c_5 ...
installing: libuuid-1.0.-h1bed415_2 ...
installing: libxcb-1.13-h1bed415_1 ...
installing: lz4-c-1.8.1.2-h14c3975_0 ...
installing: lzo-2.10-h49e0be7_2 ...
installing: mkl-2019.1- ...
installing: ncurses-6.1-he6710b0_1 ...
installing: openssl-1.1.1a-h7b6447c_0 ...
installing: patchelf-0.9-he6710b0_3 ...
installing: pcre-8.42-h439df22_0 ...
installing: pixman-0.34.-hceecf20_3 ...
installing: snappy-1.1.-hbae5bb6_3 ...
installing: xz-5.2.-h14c3975_4 ...
installing: yaml-0.1.-had09818_2 ...
installing: zlib-1.2.-h7b6447c_3 ...

安装完成后,询问我们是否要将环境变量加入~/.bashrc文件中

installation finished.
Do you wish the installer to initialize Anaconda3
in your /root/.bashrc ? [yes|no]
[no] >>> yes Initializing Anaconda3 in /root/.bashrc
A backup will be made to: /root/.bashrc-anaconda3.bak For this change to become active, you have to open a new terminal. Thank you for installing Anaconda3!

我们输入yes,安装完成。

有时候还会出现询问是否安装VSCode

Anaconda is partnered with Microsoft! Microsoft VSCode is a streamlined
code editor with support for development operations like debugging, task
running and version control. To install Visual Studio Code, you will need:
- Administrator Privileges
- Internet connectivity Visual Studio Code License: https://code.visualstudio.com/license Do you wish to proceed with the installation of Microsoft VSCode? [yes|no]
>>> no

输入no,至此安装完成。

查看anaconda版本信息

上面安装完成后,运行 source ~/.bashrc 使安装过程中添加到bashrc中的环境变量立即生效(或者断开当前终端,再ssh连接进来也可以)。

[root@neokylin ~]# conda --version
conda 4.5.
[root@neokylin ~]#

更多命令使用 conda --help 查看。

Anaconda使用

默认python及pip使用

python绝对路径为/opt/anaconda3/bin/python

[root@neokylin ~]# /opt/anaconda3/bin/python
Python 3.7. (default, Dec , ::)
[GCC 7.3.] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("hello world!")
hello world!
>>> exit()
[root@neokylin ~]#

pip绝对路径为/opt/anaconda3/bin/pip, /opt/anaconda3/bin/pip list 可以发现已经安装了很多模块了。

使用虚拟环境

假如我们不想在默认的anaconda环境中安装其他模块,或者不想使用默认的Python3.7.1,那我们可以使用虚拟环境,

我们创建一个名为py36的虚拟环境,指定python版本为3.6.7,可以执行 conda create -n py36 python=3.6. 来创建。过程需要联网,下载指定python版本的依赖库。安装完成后在最后会有下面提示,进入和离开虚拟环境的操作。

# To activate this environment, use
#
# $ conda activate py36
#
# To deactivate an active environment, use
#
# $ conda deactivate

我们使用 conda activate py36 进入虚拟环境,查看python版本,使用pip list,最后再通过 conda deactivate 退出该虚拟环境。

[root@neokylin ~]# conda activate py36
(py36) [root@neokylin ~]# python --version
Python 3.6. :: Anaconda, Inc.
(py36) [root@neokylin ~]# python
Python 3.6. |Anaconda, Inc.| (default, Oct , ::)
[GCC 7.3.] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print("hello world!")
hello world!
>>> exit()
(py36) [root@neokylin ~]# pip list
Package Version
---------- --------
certifi 2019.3.
pip 19.0.
setuptools 40.8.
wheel 0.33.
(py36) [root@neokylin ~]# conda deactivate
(base) [root@neokylin ~]# conda deactivate
[root@neokylin ~]#

如果通过 conda deactivate 退出后,出现 (base) ,可以通过再次执行 conda deactivate 退出。

所有的虚拟环境都在anaconda安装目录下的envs目录下。

我们也可以直接使用虚拟环境中的python的绝对路径来运行 /opt/anaconda3/envs/py36/bin/python --version 而不需要进入虚拟环境。类似的pip也是可以的 /opt/anaconda3/envs/py36/bin/pip list 。

参考

Anaconda安装及使用的更多相关文章

  1. 利用Anaconda安装python后,如何安装opencv-python

    利用Anaconda安装python后,想要安装opencv-python,但发现利用opencv-python的官方教程,没法实现opencv的安装 还好看到了另外一篇博客的方法,试一下,果然凑效 ...

  2. Python:Anaconda安装虚拟环境到指定路径

    1 曾经的困扰 有段时间,想使用基于不同python版本的anaconda,就直接从官网下载了两个不同的anaconda版本进行安装.刚开始的时候,还觉得也没啥问题.用了一小段时间,在安装其他的第三方 ...

  3. Anaconda 安装 Python 库(MySQLdb)的方法

    [已解决]Anaconda 安装 Python 库(MySQLdb)的方法 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 201 ...

  4. win7 使用anaconda安装tensorflow并且在jupyter notebook上启动

    记录一下学习深度学习的小事情: 1.tensorflow 现在只支持windows 64位系统: 2.因为实验室的电脑比较老旧,Gpu配置低,所以选择安装的是tensorflow Cpu版本,对于学习 ...

  5. Ubuntu环境下Anaconda安装TensorFlow并配置Jupyter远程访问

    本文主要讲解在Ubuntu系统中,如何在Anaconda下安装TensorFlow以及配置Jupyter Notebook远程访问的过程. 在官方文档中提到,TensorFlow的安装主要有以下五种形 ...

  6. Anaconda安装

    Anaconda安装时,不用单独安装python,直接安装anaconda里面就包含有对应版本的python以及各种python包,比如常用的pandas.matplotlib.numpy等.(作为一 ...

  7. Jupyter Notebook(推荐使用Anaconda安装)

    一.Jupyter Notebook介绍 1.简介 Jupyter Notebook是基于网页的用于交互计算的应用程序.其可被应用于全过程计算:开发.文档编写.运行代码和展示结果. 简而言之,Jupy ...

  8. Anaconda安装Package的问题(Permission Denied)

    最近需要用到低版本的pytorch,使用pytorch官网安装的pytorch版本是最新的0.4.1,而它的previous version的那个链接一直打不开. 因此考虑使用清华的镜像源: 1.In ...

  9. anaconda安装tensorflow报错 No module named 'tensorflow'解决方法(windows)

    这个错误的原因可能是,anaconda安装的python版本为3.7,现在tensorflow仅支持python 3.6   改变python版本:首先在命令行创建一个名为python36的环境,指定 ...

随机推荐

  1. C# 《编写高质量代码改善建议》整理&笔记 --(三)泛型&委托&事件

    1.泛型 基于泛型,我们可以将类型参数化,以便更大范围地进行代码复用.同时,它减少了泛型类及泛型方法中的转型, 确保类型安全. 1)总是优先考虑泛型 优点:可重用性,类型安全,高效率. 2)避免在泛型 ...

  2. Linux通配符应用详解

    一.强大的“*” “*”在通配符中是最常用的一种,代表0个.一个或多个字符.在使用中有三种情况,表示三种不同的含义. 1.单独的“*” 这里指的是只有“*”出现的情况,默认为单独的一个,当然连续敲两个 ...

  3. OpenCV 初体验

    个人博客原文链接 个人掘金链接 本文简单地介绍计算机图形处理的一些基本概念,以及一些有趣的例子和对应的Open CV的代码操作. 顺便说一句,恭喜IG夺冠! 一.图片存储原理 1.颜色空间RGB (1 ...

  4. C#学习笔记之值类型与引用类型

    [TOC] C#学习笔记之值类型与引用类型 1.值类型与引用类型 1.1 深层区别 值类型与引用类型有不同的内存分布,这导致了不同的内存管理机制: 值类型由OS负责内存管理 引用类型由垃圾回收器(GC ...

  5. 【转】Redis一般会遇到的问题以及解析

    单线程的 Redis 为什么这么快 这个问题是对 Redis 内部机制的一个考察.根据我的面试经验,很多人都不知道Redis 是单线程工作模型.所以,这个问题还是应该要复习一下的. 回答主要是以下三点 ...

  6. 适合精致女孩使用的APP软件 不容错过的精彩人生

    阳光下灿烂,风雨中奔跑,每个人都会遇见美丽的缘分,或深或浅,或浓或淡.所以人生不管遇到什么难题,都要勇往直前.今天分享的软件也是十分精彩的,非常适合精彩的你哦! 薄荷健康 薄荷健康APP是专为想要减肥 ...

  7. python的学习笔记01_3 基本运算符 流程控制if while 字符串常用办法

    基本运算符 运算符 计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算,今天我们暂只学习算数运算.比较运算.逻辑运 ...

  8. Spark Streaming 快速入门

    一.简介 1.便于使用 Spark Streaming将Apache Spark的 语言集成API 引入流处理,使您可以像编写批处理作业一样编写流式作业.它支持Java,Scala和Python. 2 ...

  9. SQL SERVER 2012 AlwaysOn– 数据库层面 02

    搭建 AlwaysOn 是件非常繁琐的工作,需要从两方面考虑,操作系统层面和数据库层面,AlwaysOn 非常依赖于操作系统,域控,群集,节点等概念: DBA 不但要熟悉数据库也要熟悉操作系统的一些概 ...

  10. 使用Linq的过程中碰到的问题

    1. 在使用linq过程DefaultIfEmpty的过程中如果 O.RS 这个支段的值是null,在取这个数据 就会报错 ,正确的写法 2. 在使用Linq 用where条件判断要好分辨大小写 3. ...