Python:Anaconda安装虚拟环境到指定路径
1 曾经的困扰
有段时间,想使用基于不同python版本的anaconda,就直接从官网下载了两个不同的anaconda版本进行安装。
刚开始的时候,还觉得也没啥问题。用了一小段时间,在安装其他的第三方库时,经常发现安装失败,并且经常出现下面的问题:
这个问题,我google、百度等查了好久,也没有解决好。后来,我把两个版本的anaconda都卸载了,重新安装了其中一个版本,发现再安装其他第三方库时,上述问题就不存在了。
很有可能上述问题就是同时安装两个版本的anaconda引起的(不过我也不能完全肯定)。
2 安装虚拟环境
虽然只安装一个版本的anaconda,能顺利的运行,但有时候,还是需要运行基于不同python版本的anaconda的。后来了解到,anaconda是可以在虚拟环境下运行不同python版本的。
下面的步骤演示了我的安装过程,也希望大家能避免一些坑。
先说下我的安装环境:
- windows7,64位系统
- 目前安装了anaconda4.2.0版本(基于python3.5)
由于经常看到有说python3.6版本运行效率比3.5版本高,就有一种想安装3.6的冲动,但是由于部分python库还不支持3.6,所以主要版本还是以3.5为主。
anaconda安装python3.6版本的虚拟环境的步骤如下:
输入安装命令:conda create -n py36 python=3.6
结果如下:
“-n”命令,会将虚拟环境安装在anaconda已安装路径默认的envs目录下。
可以看出,命令行中提示有一个警告,由于我的anaconda默认安装路径中有空格,提示可能会引起一些问题。由于有这个警告,我就没有继续往下安装。
另外,我的路径在C盘,考虑到可能空间也不多,还是不要继续往C盘装东西了。于是想,要是能安装在其他指定路径且路径中没有空格,不就解决这个问题了么。
通过查阅anaconda的文档,发现是可以进行指定路径安装的。可以输入如下命令进行查看:conda create --help
安装虚拟环境到指定路径的命令如下:
conda create --prefix=D:\python36\py36 python=3.6
上面的命令中, 路径D:\python36是先建好的文件夹,py36是需要安装的虚拟环境名称。请注意,安装完成后,虚拟环境的全称包含整个路径,为D:\python36\py36。激活指定路径下的虚拟环境的命令如下:activate D:\python36\py36
退出虚拟环境的命令如下:
deactivate
想要删除指定路径下的虚拟环境,使用如下的命令:
conda remove --prefix=D:\python36\py36 --all
插播一条硬广:技术文章转发太多。文章来自微信公众号“Python数据之道”(ID:PyDataRoad)。
3 虚拟环境下安装python库
如果还想继续安装python2.7的虚拟环境,方法跟安装python3.6是一致的。
上述虚拟环境py27安装完成后,激活后虚拟环境后,可以安装其他python库。
比如安装requests库
pip install requests
是可以安装成功的。
如果遇到pip安是失败,可尝试用下述方法:(指定路径下安装):
conda install -prefix=D:\pyenv\py27 package
请注意,默认路径下的命令是 “conda install -n py27 package”
当然了,有一些库不论conda和pip都无法直接安装,只能下载.whl进行安装。
安装的方法可以参考下面文章的内容:
最后,来查看已安装好的虚拟环境下都安装了那些python库,输入命令:
conda list
发现已安装好的虚拟环境py36下只安装了少量的基本库,如果也想用3.6版来进行科学计算,需要安装许多其他的库,如果一个一个安装,则会费时费力,而且容易出错,这时anaconda提供了一个命令,可以把基于python3.6版本的anaconda中的其他库一次安装好,命令如下:
conda install -prefix=D:\pyenv\py36 anaconda
请特别注意,全部安装时,安装包会很多,安装时间比较长,同时占用安装空间也会比较大,请根据自己的需求选择是否安装
我安装py36全部的库花了大概1个多小时。
拓展阅读:
欢迎关注我的微信公众号
“Python数据之道”
Python:Anaconda安装虚拟环境到指定路径的更多相关文章
- python之实现循环查看指定路径下的所有文件---os.walk
循环查看指定路径下的所有文件.文件夹,包含隐藏文件注:“.filename” 以点开头的是隐藏文件 import os for cur_path,cur_dirs,cur_files in os.wa ...
- ubuntu 16.04 Python Anaconda 安装
Python Anaconda 不同版本在官网上的位置:https://www.anaconda.com/download/#linux 进入官网=>Changelog=>Product ...
- Python小代码_15_遍历指定路径下的所有文件和文件夹,并格式化输出文件路径文件名和文件夹名,文件大小,修改时间
遍历指定路径下的所有文件和文件夹,并格式化输出文件路径文件名和文件夹名,文件大小,修改时间 import osimport datetime def print_tree(dir_path): for ...
- python︱Anaconda安装、简介(安装报错问题解决、Jupyter Notebook)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 安装完anaconda,就相当于安装了Pyth ...
- python anaconda 安装 环境变量 升级 以及特殊库安装
Anaconda 是一个旗舰版的python安装包, 因为普通的python没有库, 如果需要安装一些重要的库, 要经常一个一个下载,会非常麻烦. 所以这个一个集成的, 可以手动批量升级的软件. 而且 ...
- 小白学Python——Anaconda安装
小白:Mr.林,快救救我,我被那些数据压得喘不过气了. Mr.林:小白,表方,怎么了? ! 小白:Mr.林,我从公司数据平台上下了一堆数据,如果选择时间范围广的话,平台就卡的动不了,动不动还奔溃, ...
- python Anaconda 安装管理包,开发环境
在自己的电脑上安装Anaconda,用conda create创建一个python 2.7版本的environment.今后我们的程序都在这个环境下执行 0.download anaconda and ...
- python 查看安装的库的路径(找site-packages)
import sysprint(sys.path) orwhich pythonwhich python3
- 历史文章分类汇总-Anaconda安装第三方包(whl文件)
本文主要是对公众号之前发布的文章进行分类整理,方面大家查阅,以后会不定期对文章汇总进行更新与发布. 一.推荐阅读: Anaconda安装第三方包(whl文件) 福布斯系列之数据分析思路篇 福布斯系 ...
随机推荐
- (知识点)JS获取网页高度
网页可见区域的宽:document.body.clientWidth 网页可见区域的高:document.body.clientHeight 网页可见区域的宽:document.body.offset ...
- Mqtt服务器搭建
.bg { background: #99CC99 } Mqtt服务器搭建 测试环境:CentOS64位 1.安装基础软件 yum install gcc-c++ yum install cmake ...
- linux安装vmware tools 步骤
虚拟机 -- 安装 VMware Tools 会自动挂载光驱. 1. cd /misc/cd 2. copy 文件到临时文件夹cp VMwareTools-9.6.2-1688356.tar.gz ...
- ConcurrentHashMap实现原理及源码分析
ConcurrentHashMap实现原理 ConcurrentHashMap源码分析 总结 ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对Ha ...
- Java7中的ForkJoin并发框架初探(下)—— ForkJoin的应用
前两篇文章已经对Fork Join的设计和JDK中源码的简要分析.这篇文章,我们来简单地看看我们在开发中怎么对JDK提供的工具类进行应用,以提高我们的需求处理效率. Fork Join这东西确实用好了 ...
- Vue中comoputed中的数据绑定
Vue中的数据实现响应式绑定是在初始化的时候利用definePrototype的定义set和get过滤器,在进行组件模板编译时实现water的监听搜集依赖项,当数据发生变化时在set中通过调用dep. ...
- Java源码学习 -- java.lang.StringBuilder,java.lang.StringBuffer,java.lang.AbstractStringBuilder
一直以来,都是看到网上说“ StringBuilder是线程不安全的,但运行效率高:StringBuffer 是线程安全的,但运行效率低”,然后默默记住:一个是线程安全.一个线程不安全,但对内在原因并 ...
- C# 关于操作datatable的列名和删除某一列的数据
1.获取一个数据集表 DataTable dt = selectDEGS(type, words, KUser); 2.删除某一列 dt.Columns.Remove("TaskID&quo ...
- php implode()函数详解
php implode()函数的作用? php 中implode() 函数是返回一个由数组元素组合成的字符串,它与php explode()函数的作用是相反的,php explode() 函数是:使用 ...
- iOS安全攻防之代码混淆
iOS 代码安全之代码混淆实践: 前言: 在8月份的时候写了个关于 class-dump 反编译的文章(使用 Class-dump 反编译),利用 class-dump 工具可以反编译出工程的头文件, ...