设置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 ...
随机推荐
- Jenkins+Ansible+Gitlab自动发布/回滚Spring项目
一.实现方法流程图 流程图如下:代码托管在本地GitLab上(为了复现整套流水线,我直接使用了GitHub,懒得再搭建GitLab),开发完成后提交代码到代码仓库,[自动]触发Jenkins进行持续集 ...
- libevent(三)event_base
libevent能够处理三种事件: I/O.定时器.信号. event_base 统一管理所有事件. struct event_base { const struct eventop *evsel; ...
- Hadoop-wordCount实例代码编写(Hadoop学习第四天)
1.新建一个maven项目2.pom文件中引入以下jar包<dependency> <groupId>org.apache.hadoop</groupId> < ...
- P5343 【XR-1】分块(dp矩阵加速)
\(大意是用数组a里的数字,组成一个序列,使得序列和为n的方案种数\)传送门 \(先考虑dp.\) \(但是不能直接用背包转移,因为是序列,要考虑顺序.\) \(所以,为了去重,我们令dp[i][j] ...
- spring学习笔记(三)我对AOP理解
首先我们要知道AOP是什么?AOP全称Aspect OrientedProgramming,即面向切面编程.在这里我不想去说什么是切面,什么是切点,什么是通知等等,相关博客很多,如果大家想知道可以自己 ...
- 第六章第二十题(计算一个字符串中字母的个数)(Count the letters in a string) - 编程练习题答案
*6.20(计算一个字符串中字母的个数)编写一个方法,使用下面的方法头计算字符串中的字母个数: public static int countLetters(String s) 编写一个测试程序,提示 ...
- 转载-git使用之忽略不需要上传的文件的几种方式
在我们使用git 的时候通常会遇到一些问题,一些文件我创建了但是我并不想上传或者有些文件我修改了但是并不想上传(为了适应个自己的开发环境),但是在每次git status的时候总能看到它,不仅感到很心 ...
- Linux -- 在文件中添加信息的方法(转)
转自:https://www.cnblogs.com/ZGreMount/p/7645542.html 创建test 文件: touch test.txt 方法一:echo 命令法: echo &qu ...
- vue 升级element-ui woff文件404
一.build文件下utils.js下增加 publicPath:'../../' 二. 同样的代码环境,用yarn来安装依赖后启动运行正常,而采用npm安装依赖则有类似问题.当然,这个和yarn或者 ...
- 关于SpringMVC乱码问题
关于SpringMVC运行Tomcat控制台出现乱码的情况(在网上找到一种方法亲测有效) 找到tomcat文件夹中的conf包下的logging.properties中找到 java.util.log ...