Anaconda可移植python环境(anaconda怎么装python)

http://www.itjxue.com  2023-04-09 15:31  来源:未知  点击次数: 

如何用anaconda python

Python易用,但用好却不易,其中比较头疼的就是包管理和Python不同版本的问题,特别是当你使用Windows的时候。为了解决这些问题,有不少发行版的Python,比如WinPython、Anaconda等,这些发行版将python和许多常用的package打包,方便pythoners直接使用,此外,还有virtualenv、pyenv等工具管理虚拟环境。

个人尝试了很多类似的发行版,最终选择了Anaconda,因为其强大而方便的包管理与环境管理的功能。该文主要介绍下Anaconda,对Anaconda的理解,并简要总结下相关的操作。

Anaconda概述

Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。

这里先解释下conda、anaconda这些概念的差别。conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理。包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。

进入下文之前,说明一下conda的设计理念——conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地安装各种版本python、各种package并方便地切换。

Anaconda的安装

Anaconda的下载页参见官网下载,Linux、Mac、Windows均支持。

安装时,会发现有两个不同版本的Anaconda,分别对应Python 2.7和Python 3.5,两个版本其实除了这点区别外其他都一样。后面我们会看到,安装哪个版本并不本质,因为通过环境管理,我们可以很方便地切换运行时的Python版本。(由于我常用的Python是2.7和3.4,因此倾向于直接安装Python 2.7对应的Anaconda)

下载后直接按照说明安装即可。这里想提醒一点:尽量按照Anaconda默认的行为安装——不使用root权限,仅为个人安装,安装目录设置在个人主目录下(Windows就无所谓了)。这样的好处是,同一台机器上的不同用户完全可以安装、配置自己的Anaconda,不会互相影响。

对于Mac、Linux系统,Anaconda安装好后,实际上就是在主目录下多了个文件夹(~/anaconda)而已,Windows会写入注册表。安装时,安装程序会把bin目录加入PATH(Linux/Mac写入~/.bashrc,Windows添加到系统变量PATH),这些操作也完全可以自己完成。以Linux/Mac为例,安装完成后设置PATH的操作是

1

2

3

4

# 将anaconda的bin目录加入PATH,根据版本不同,也可能是~/anaconda3/bin

echo 'export PATH="~/anaconda2/bin:$PATH"' ~/.bashrc

# 更新bashrc以立即生效

source ~/.bashrc

配置好PATH后,可以通过which conda或conda --version命令检查是否正确。假如安装的是Python 2.7对应的版本,运行python --version或python -V可以得到Python 2.7.12 :: Anaconda 4.1.1 (64-bit),也说明该发行版默认的环境是Python 2.7。

Conda的环境管理

Conda的环境管理功能允许我们同时安装若干不同版本的Python,并能自由切换。对于上述安装过程,假设我们采用的是Python 2.7对应的安装包,那么Python 2.7就是默认的环境(默认名字是root,注意这个root不是超级管理员的意思)。

假设我们需要安装Python 3.4,此时,我们需要做的操作如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

# 创建一个名为python34的环境,指定Python版本是3.4(不用管是3.4.x,conda会为我们自动寻找3.4.x中的最新版本)

conda create --name python34 python=3.4

# 安装好后,使用activate激活某个环境

activate python34 # for Windows

source activate python34 # for Linux Mac

# 激活后,会发现terminal输入的地方多了python34的字样,实际上,此时系统做的事情就是把默认2.7环境从PATH中去除,再把3.4对应的命令加入PATH

# 此时,再次输入

python --version

# 可以得到`Python 3.4.5 :: Anaconda 4.1.1 (64-bit)`,即系统已经切换到了3.4的环境

# 如果想返回默认的python 2.7环境,运行

deactivate python34 # for Windows

source deactivate python34 # for Linux Mac

# 删除一个已有的环境

conda remove --name python34 --all

用户安装的不同python环境都会被放在目录~/anaconda/envs下,可以在命令中运行conda info -e查看已安装的环境,当前被激活的环境会显示有一个星号或者括号。

说明:有些用户可能经常使用python 3.4环境,因此直接把~/anaconda/envs/python34下面的bin或者Scripts加入PATH,去除anaconda对应的那个bin目录。这个办法,怎么说呢,也是可以的,但总觉得不是那么elegant……

如果直接按上面说的这么改PATH,你会发现conda命令又找不到了(当然找不到啦,因为conda在~/anaconda/bin里呢),这时候怎么办呢?方法有二:1. 显式地给出conda的绝对地址 2. 在python34环境中也安装conda工具(推荐)。

Conda的包管理

Conda的包管理就比较好理解了,这部分功能与pip类似。

例如,如果需要安装scipy:

1

2

3

4

5

6

7

# 安装scipy

conda install scipy

# conda会从从远程搜索scipy的相关信息和依赖项目,对于python 3.4,conda会同时安装numpy和mkl(运算加速的库)

# 查看已经安装的packages

conda list

# 最新版的conda是从site-packages文件夹中搜索已经安装的包,不依赖于pip,因此可以显示出通过各种方式安装的包

conda的一些常用操作如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

# 查看当前环境下已安装的包

conda list

# 查看某个指定环境的已安装包

conda list -n python34

# 查找package信息

conda search numpy

# 安装package

conda install -n python34 numpy

# 如果不用-n指定环境名称,则被安装在当前活跃环境

# 也可以通过-c指定通过某个channel安装

# 更新package

conda update -n python34 numpy

# 删除package

conda remove -n python34 numpy

前面已经提到,conda将conda、python等都视为package,因此,完全可以使用conda来管理conda和python的版本,例如

1

2

3

4

5

6

7

8

9

# 更新conda,保持conda最新

conda update conda

# 更新anaconda

conda update anaconda

# 更新python

conda update python

# 假设当前环境是python 3.4, conda会将python升级为3.4.x系列的当前最新版本

补充:如果创建新的python环境,比如3.4,运行conda create -n python34 python=3.4之后,conda仅安装python 3.4相关的必须项,如python, pip等,如果希望该环境像默认环境那样,安装anaconda集合包,只需要:

1

2

3

4

5

6

# 在当前环境下安装anaconda包集合

conda install anaconda

# 结合创建环境的命令,以上操作可以合并为

conda create -n python34 python=3.4 anaconda

# 也可以不用全部安装,根据需求安装自己需要的package即可

设置国内镜像

如果需要安装很多packages,你会发现conda下载的速度经常很慢,因为Anaconda.org的服务器在国外。所幸的是,清华TUNA镜像源有Anaconda仓库的镜像,我们将其加入conda的配置即可:

1

2

3

4

5

6

# 添加Anaconda的TUNA镜像

conda config --add channels u.cn/anaconda/pkgs/free/

# TUNA的help中镜像地址加有引号,需要去掉

# 设置搜索时显示通道地址

conda config --set show_channel_urls yes

执行完上述命令后,会生成~/.condarc(Linux/Mac)或C:UsersUSER_NAME.condarc文件,记录着我们对conda的配置,直接手动创建、编辑该文件是相同的效果。

Anaconda具有跨平台、包管理、环境管理的特点,因此很适合快速在新的机器上部署Python环境。总结而言,整套安装、配置流程如下:

下载Anaconda、安装

配置PATH(bashrc或环境变量),更改TUNA镜像源

创建所需的不用版本的python环境

Just Try!

如何在Mac版本的python中使用anaconda环境

下载 Anaconda

直接在官网下载安装包, 选择 Python3.6 的安装包进行下载,下载完成后直接安装,安装过程选择默认配置即可,大约需要1.8G的磁盘空间。

conda 工具介绍

conda 是 Anaconda 下用于包管理和环境管理的工具,功能上类似 pip 和 vitualenv 的组合。安装成功后 conda 会默认加入到环境变量中,因此可直接在命令行窗口运行命令 conda

conda 的环境管理与 virtualenv 是基本上是类似的操作。

# 查看帮助

conda -h

# 基于python3.6版本创建一个名字为python36的环境

conda create --name python36 python=3.6

# 激活此环境

activate python36

# 再来检查python版本,显示是 3.6

python -V

# 退出当前环境

deactivate python36

# 删除该环境

conda remove -n python36 --all

# 或者

conda env remove -n python36

# 查看所以安装的环境

conda info -e

python36 * D:\Programs\Anaconda3\envs\python36

root D:\Programs\Anaconda3

conda 的包管理功能可 pip 是一样的,当然你选择 pip 来安装包也是没问题的。

# 安装 matplotlib

conda install matplotlib

# 查看已安装的包

conda list

# 包更新

conda update matplotlib

# 删除包

conda remove matplotlib

在 conda 中 anything is a package。conda 本身可以看作是一个包,python 环境可以看作是一个包,anaconda 也可以看作是一个包,因此除了普通的第三方包支持更新之外,这3个包也支持。比如:

# 更新conda本身

conda update conda

# 更新anaconda 应用

conda update anaconda

# 更新python,假设当前python环境是3.6.1,而最新版本是3.6.2,那么就会升级到3.6.2

conda update python

修改镜像地址

Anaconda 的镜像地址默认在国外,用 conda 安装包的时候会很慢,目前可用的国内镜像源地址有清华大学的。修改 ~/.condarc (Linux/Mac) 或 C:\Users\当前用户名\.condarc (Windows) 配置:

channels:

-

- defaults

show_channel_urls: true

如果使用conda安装包的时候还是很慢,那么可以考虑使用pip来安装,同样把 pip 的镜像源地址也改成国内的,豆瓣源速度比较快。修改 ~/.pip/pip.conf (Linux/Mac) 或 C:\Users\当前用户名\pip\pip.ini (Windows) 配置:

[global]

trusted-host = pypi.douban.com

index-url =

环境搭建好之后就可以开始愉快地玩数据分析了。

来源:Anaconda 入门安装教程 - FooFish

anaconda安装怎么导入到python

1、先从官网上下载对应版本的安装包,地址:

2、windows环境,如果已经安装了python,安装anaconda时一定要注意环境变量的问题

希望能够帮助到你。

anaconda怎么安装python环境?

anaconda自带有Python运行环境无需另外安装,如果是要安装其他版本的Python环境可以使用命令:conda create -n python37 python=3.7

anaconda 怎么引用或者copy系统的python库

1. 首先安装python,我选择安装Anaconda (Windows 64-Bit Python 2.7 Graphical Installer 下载地址)。

Anaconda的一些命令(在Anaconda的命令行窗口输入):

conda list #该命令,将列出Anaconda安装的所有应用包,我们可以看到Anaconda已经安装了numpy, nose, pip, python, scipy, mingw等等。

conda install pkg name #该命令用于安装应用包,如 conda install numpy.

pip install pkg name #该命令用于安装应用包,如 pip install theano.

conda update pkg name #升级应用包,如 conda update python

2. 安装Theano,在Anaconda 的命令窗口中输入 pip install theano,可以看到程序开始下载安装包,并检查是否满足安装条件:numpy=1.5.0,scipy=0.7.2,满足条件之后开始运行setup.py安装theano,安装完成后会显示Successfully installed theano。

3. 测试Theano安装情况。

(1)在ipython中输入以下两行代码:

import theano

theano.test()

会显示theano的版本号,安装位置,已经其他包的安装版本,如numpy,nose,python等。

在运行中出现g++不是内部或外部命令,也不是可运行的程序或批处理文件。

(2)在Anaconda的命令行窗口输入:python Lib\site-packages\theano\tests\run_tests_in_batch.py

显示unable to find theano-nose,查看run_tests_in_batch.py发现,其中路径设置为在bin下寻找theano-nose文件,而实际上Anaconda文件夹下根本没有bin这个文件夹,theano-nose存放在Scripts文件夹中。

》》》尝试1:将Scripts更名为bin,重新运行这句命令,可以成功运行。但是出现一个warning,提示没有检测到g++,所以无法运行优化后的C代码版本,只能执行python版本。

该种尝试的结果是,下次打开Anaconda 命令窗口后出现错误,因为其运行路径为Scripts,所以还是不要修改了。

(3)g++问题。我们打开MinGW文件夹,可以很清楚的看到有g++,但是为什么使用不了呢??在Anaconda 命令窗口中输入g++也能成功调用g++.exe啊。所以结论是,鉴于这个代码中出现很明显的漏洞,所以说不定这里也是错误,先不管这些了。

试着做了以下配置,也不知行不行。

添加环境变量: path: C:\Anaconda\MinGW\bin;C:\Anaconda\MinGW\x86_64-w64-mingw32\lib;

新建环境变量: PYTHONPATH: C:\Anaconda\Lib\site-packages\theano;

在home目录下(cmd可以看到,我的是C:\Users\Administrator),创建 .theanorc.txt 文件内容如下:

[global]

openmp=False

[blas]

ldflags=

[gcc]

cxxflags = -IC:\MinGW\include

(4)验证BLAS是否安装成功。由于numpy是依赖BLAS的,如果BLAS没有安装成功,虽然numpy亦可以安装,但是无法使用BLAS的加速。验证numpy是否真的成功依赖BLAS编译,用以下代码试验:

import numpy

id(numpy.dot) == id(numpy.core.multiarray.dot)

False

结果为False表示成功依赖了BLAS加速,如果是Ture则表示用的是python自己的实现并没有加速。

(责任编辑:IT教学网)

更多

推荐金山WPS文章