设置Mac终端、pip、Anaconda、PyCharm共用一套环境
最近我在用Macbook Pro练习PyTorch的时候,发现明明在终端已经用pip安装了PyTorch,但在pycharm运行时总是报错:No module named torch. 但是我把同样的代码用Spyder跑就没有问题,感动很费解,找了很多资料,终于弄明白了。原来Pycharm、Spyder和终端用的不是同一个环境,在终端安装的地方没有用在pycharm里面。
下面记录一下解决办法:
1、安装Anaconda3之后,有一个Anaconda Navigator应用程序,打开它,可以在其中的左侧边栏看到Environments这一个Tab,点击Environments 会列出由Anaconda管理的环境列表(把鼠标悬停在任意一个环境名称上,将会显示出该环境所在的目录路径,如/anaconda3/envs/my_workspace,这个目录可用于后续配置pycharm的运行环境),环境列表右侧是每个环境包含的python包列表【每个环境就类似一个独立的运行空间(与docker, virtualenv等概念类似),我们可以在一个环境中安装我们需要的其他第三方python包,如pandas,scikit-learn等】,我们写的项目代码需要选择一个环境作为依托。
2、安装完Anaconda之后,打开Mac端,命令行的前缀会变成(base)Mac主机名:~当前用户名$,其中的base就是Anaconda的其中一个Environment, 就是当前被选中的Python运行环境,也是Anaconda Navigator的环境列表中的第一项。
3、管理Conda环境的方法有两种:
(1)通过Anaconda Navigator的图形界面,创建、删除环境
(2)通过Mac的命令行终端程序(terminal)输入conda命令来创建、激活、删除环境(conda命令的使用方法可参考: 使用conda管理python环境)我推荐使用conda命令,因为速度快。
4、选定一个环境之后,怎么在其中安装、卸载python包,如pandas、tensorflow?有三种途径:
(1)在终端利用conda命令:conda install 包名,或conda install 包名==包的版本号,如安装tensorflow2.0.0,可使用conda install tensorflow==2.0.0
具体方法可参考:https://zhuanlan.zhihu.com/p/22678445 ,如果conda install时提示找不到指定的包,则需要添加Python包的源,国内可使用清华的源,前面的链接也有添加源的方法。
(2)在终端适用pip,如pip install 包名==版本号,pip uninstall 包名。
(3)在Anaconda Navigator的图形界面进行安装、删除python包的操作。但其操作效率不如前两种命令行的方式快。
5、决定是否需要创建额外的环境:
(1)如果开发工具使用Anaconda自带的Spyder,那么你无需在Anaconda Navigator或使用conda命令额外配置环境,使用默认的环境(base)即可,如需安装第三方python包,通过conda或pip命令即可。
(2)如果使用PyCharm作为开发工具,则需要在base之外,再创建一个自定义的环境(使用conda命令或Anaconda Navigator)。再在pycharm进行设置使用这个自定义的环境。
使用conda命令创建自定义环境(如命名为my_workspace)之后,在pycharm Mac版中,点击电脑左上角的pycharm按钮,再Preferance-Project:我的工程名称->Project Interpreter->在右侧的Project Interpreter下拉框的右侧->Select All...->左下角的加号->选择左侧的Conda Enviroment->单选Existing Environment->设置Interpreter的路径为我们在Anaconda Navigator中看到的my_workspace环境的路径(如本文的第1部分所述)【注意:进入该目录之后,需要继续往下找,找到其中的python可执行文件,因此完整路径为/anaconda3/envs/my_workspace/bin/python3.7 】,再点击OK即可。
这样,以后如果这个工程再需要安装任何python包都可以通过conda命令和Anaconda Navigator来进行安装管理。
设置Mac终端、pip、Anaconda、PyCharm共用一套环境的更多相关文章
- mac终端命令及pycharm常用快捷键记录
mac终端命令: 1.root权限 $sudo su - 2.定位到指定文件夹位置 $cd /Users/计算机名称/Desktop (定位到桌面) 3.新建文件夹 $mkdir 文件夹名称 ...
- 设置Mac 终端走代理
1.打开终端执行:export http_proxy=socks5://127.0.0.1:1080 这个只能在当前终端执行一次退出后就需要重新设置 如果需要开机自动设置,把上面的代码加到~/.bas ...
- Mac 终端—不同文件不同颜色显示,提示文字
原文地址 修改Mac终端(Terminal)里不同类型文件的显示颜色 修改Mac终端(Terminal)的提示文字 Mac终端显示/隐藏文件命令 1. 修改Mac终端(Terminal)里不同类型文件 ...
- mac 终端 使用 solarized 主题设置语法高亮
mac 终端 使用 solarized 主题设置语法高亮 先来看看 solarized 在 mac 终端上的效果图片 一:先下载 solarized 官网下载:https://github.com/a ...
- Mac 终端命令使用自动补全时忽略大小写设置
Mac 终端在使用 tab 补全命令时默认大小写敏感,通过以下设置方法可以忽略大小写,方法同样适用于 iTerm2. 打开终端输入以下命令: nano .inputrc 将以下命令复制进去: set ...
- MacOS上安装Anaconda+Pycharm+TensorFlow+Keras
一.安装Anaconda 登录https://www.anaconda.com/download/#macos,下载Anaconda3-5.3.1-MacOSX-x86_64.pkg 二.安装Pych ...
- python+anaconda+pycharm的使用
研一开学的时候开始接触了这些,但是对于其各种功能感到十分混乱,现在通过这篇博文将其功能详细的写出来. 1.python解释器 首先要了解python解释器,我们俗称的下载python也就是下载pyth ...
- Anaconda Pycharm 是怎么个事儿?
前言 许多人学习Python的经历可能很相似,写程序没有问题,最后却被各种环境困扰. 不论你是Python小白,还是学习Python有一段时间了.都可以认真的看一下ヾ(≧▽≦*)o 这篇文章让你对An ...
- 从mac终端创建cocos2d-x项目在xcode和eclipse正常运行环境配置
一.创建可以同时运行在xcode和eclipse的项目: 1.打开mac终端,进入cocos2d-x目录下的tools/project-creator,执行命令./create_project.py ...
随机推荐
- session与cookie的浅谈
cookie的用途: 当你浏览网页时,会有一些推送消息,大多数是你最近留意过的同类东西,比如你想买桌子,上淘宝搜了一下,结果连着几天会有各种各样的桌子的链接.这是因为你浏览某个网页的时候,WEB 服务 ...
- 【Python】Django2.0集成Celery4.1详解
环境准备 Python3.6 pip install Django==2.0.1 pip install celery==4.1.0 pip install eventlet (加入协程支持) 安装e ...
- andorid jar/库源码解析之错误提示
目录:andorid jar/库源码解析 错误: 错误1: Error: Static interface methods are only supported starting with Andro ...
- Shell脚本(二)数学运算
直接上代码. #!/bin/bash no1= no2= echo "using let ..." let result=no1+no2 echo "result is: ...
- libevent(九)evhttp
用libevent构建一个http server非常方便,可参考libevent(六)http server. 主要涉及的一个结构体是evhttp: struct evhttp { /* Next v ...
- dfs+线段树 zhrt的数据结构课
zhrt的数据结构课 这个题目我觉得是一个有一点点思维的dfs+线段树 虽然说看起来可以用树链剖分写,但是这个题目时间卡了树剖 因为之前用树剖一直在写这个,所以一直想的是区间更新,想dfs+线段树,有 ...
- 武装你的WEBAPI-OData入门
本文属于OData系列 目录(可能会有后续修改) 武装你的WEBAPI-OData入门 武装你的WEBAPI-OData便捷查询 武装你的WEBAPI-OData分页查询 武装你的WEBAPI-ODa ...
- HBase Filter 过滤器之QualifierFilter详解
前言:本文详细介绍了 HBase QualifierFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考.QualifierFilter 基于列名进行过滤, ...
- [hdu2087]kmp水题
题意:求模板串在文本串中出现的次数(位置无交叉).只需在找到的时候把模板串指针归0即可. #pragma comment(linker, "/STACK:10240000,10240000& ...
- 系统学习scala--基础
scala基础 安装scala(不推荐使用最新版本,2.11.x够用了) scala官网 2.11.12版本下载页面 这里我选择2.11.12版本,在下载页面往下拉,选择scala-2.11.12.m ...