官网下载:https://www.anaconda.com/products/distribution
选择自己需要的版本下载:https://repo.anaconda.com/archive/
下载之后是.exe文件,直接双击打开安装,可以改一下安装路径,其他都选择默认直接next。
测试安装成功。
安装成功后,就可以用anaconda来创建一个个独立的python环境了。
activate
activate 能将我们引入anaconda设定的虚拟环境中,如果后面什么参数都不加那么会进入anaconda自带的base环境。
输入python,这样会进入base环境的python解释器, 如果把原来环境中的python环境去除掉会更能体会到,这个时候在命令行中使用的已经不是你原来的python而是base环境下的python。而命令行前面也会多一个(base) 说明当前我们处于的是base环境下。
创建自己的虚拟环境conda create -n python37 python=3.7
或者conda create --name python37 python=3.7
于是我们就有了一个python37的虚拟环境,接下来我们切换到这个环境, 一样还是用activae命令,后面加上要切换的环境名称
# 创建一个名为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
conda install requests
或者
pip install requests
conda remove requests
或者
pip uninstall requests
#查看当前环境中所有安装了的包可以用
conda list
#导入导出环境
#如果想要导出当前环境的包信息可以用
conda env export > environment.yaml
#将包信息存入environment.yaml文件中.
#当需要重新创建一个相同的虚拟环境时可以用
conda env create -f environment.yaml
activate // 切换到base环境
activate learn // 切换到learn环境
conda create -n learn python=3 // 创建一个名为learn的环境并指定python版本为3(的最新版本)
conda env list // 列出conda管理的所有环境
conda list // 列出当前环境的所有包
conda install requests 安装requests包
conda remove requests 卸载requets包
conda remove -n learn --all // 删除learn环境及下属所有包
conda update requests 更新requests包
conda env export > environment.yaml // 导出当前环境的包信息
conda env create -f environment.yaml // 用配置文件创建新的虚拟环境
在Setting => Project => Project Interpreter 里面修改 Project Interpreter
我们可以看到我这里其实是有其他的环境,这是我在创建项目的使用使用了虚拟环境,pycharm会自动给我生成一个venv目录,下面则是独立的python环境。
点击三个小点标志再点击Add Local为你某个环境的python.exe解释器就行了。
添加Anaconda,我们选择了anaconda的python.exe,conda executable会自动识别conda的位置,将Make available to all projects勾选,所有项目都使用
然后点击ok,我们就可以看到Anaconda已经帮我们安装了很多库。
如果我们是第一次使用Pycharm,那么创建项目的时候会初始化,要是已经使用过一段时间,再配置Anaconda,也会初始化。
前面新建的 Anaconda 环境包含各种数据分析,机器学习等包,可以直接拿来用,并不需要再安装一遍,方便实用。但是,有时候,我们并不需要这么多的包,而是需要特定版本的 Python 或者 Python 包,或是依赖冲突等问题,这就要求有一个独立运行的环境。而 Conda 建立的环境正好满足了这个需求。
首先检查使用电脑的显卡版本:NVIDIA控制面板 -> 帮助 -> 系统信息 -> 组件
然后去PyTorch官网找到自己需要的版本
PyTorch官网:https://pytorch.org/
复制这一段命令,改成自己需要的版本。
或者点击下面的Previous version去找与自己cuda版本适配的torch
我的cuda是11.0的,torch选择的是1.7.1的版本,直接复制命令安装即可
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=11.0 -c pytorch
emmm 意料之中果然失败了…(看到这么大就有不好的预感)
看到一些博客说换成清华的镜像就可以了
加入清华源镜像
在命令行中依次输入以下命令
仅输入前三行和最后一行,如果不行,再将剩下的全部加上
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/peterjc123/
conda config --set show_channel_urls yes
输入下面代码可以看到加入的channels
conda config --show
如果在添加channels时,添加错误的信息,一定要手动删除,或者命令删除,不然安装会一直报错。
删除的话就把上面的add改成remove就行了!或者去文件.condarc中,手动删除掉。
然后找到官网安装代码,去掉后面的-c pytorch,-c pytorch参数指定了conda获取pytorch的channel,在此指定为conda自带的pytorch仓库。因此,只需要将-c pytorch语句去掉,就可以使用清华镜像源快速安装pytorch了。(下载速度真的超级快,果然校园网还是可以的)
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=11.0
下面是换回默认源的代码:
换回默认源:conda config --remove-key channels
1、点击左上角setting,如下图
2、点击左栏的python interpreter
3、选择conda 环境,然后选择已经存在的环境 Existing environment
4、后面直接ok
5、测试,输入以下代码
import torch
print(torch.cuda.is_available())
x=torch.randn(3,5)
print(x)