python和anaconda的区别


Posted in Python onMay 06, 2022

前言

如果你曾经是一名小白,下载安装东西都是跟着教程或者视频点点点没去思考,或者你是一位不清楚python、pycharm、anaconda之间关系的同学。那这篇文章或许会对你有帮助。

因为大部分人可能都是先安装的python,之后学了一段时间开始的anaconda,所以首先解释下python与pycharm。

注意!!!

不要轻易尝试把你以前用过的python添加到anaconda你新创建的环境!!!没什么意义也不差那点内存。如果你是大佬或者按照大佬写过的文章按步正确执行。否则你要花费5分钟卸载anaconda重装。这里我就不演示了。

答疑解惑

1. python与pycharm

我们用的pycharm是一个叫IDE(集成开发环境)的开发环境。你应该见过cmd,

python和anaconda的区别

或者python:

python和anaconda的区别

这样敲代码是不是很不方便,所以我们使用IDE,当然IDE的好处不止方便。

你像其他语言,当你去学的时候一般都是需要编译和IDE配合使用的。

像JetBrains全家桶,visual studio,等等都是这样。

python和anaconda的区别

再说下python。

这个东西叫编译器,就是编译代码用的,因为您自己识别01010也有些困难不是。

一般你下载安装编译器的时候都会让你安装环境变量,这是为了让我们方便在cmd调用,其实一些语言不安装也可以,因为用的不多。

比如我配置过python的环境变量,就可以在cmd中输入python

python和anaconda的区别

这是因为我添加了C:\python3.8这个环境变量,里面有python.exe。

python和anaconda的区别

这与我们手动打开python是一样的

python和anaconda的区别

python和anaconda的区别

同理像我们pip install,wheel等的命令也是,因为在环境变量中有C:\python3.8\Scripts,而在这个文件夹下有pip.exe

python和anaconda的区别

 等等。

至于为什么我们为什么下载安装python,配置环境变量后,再去安装pycharm,一点关系也没有,即不配置环境变量、以后配置也可以,并不影响你pycharm使用。多数教程配置环境变量,仅是为了告诉你安装成功和方便以后使用,因为他们执行了 xx --version 。

python和anaconda的区别

而在你新建pycharm项目或者文件时,因为它需要编译器,它会自动匹配上你下载的python,所以你能print("hellow world") 成功。

2. anaconda

这一个用于科学计算的python发行版本,它也可以运行多个版本的python,等有很多强大的功能。

你下载它可能是因为要学Numpy、Pandas、Matplotlib等的科学计算库了。当然这些东西python一样可以运行。你可以在终端中输入pip install numpy直接用,或者用pycharm打开个文件,里面写上import numpy,它会飘红,因为你没下载过,你鼠标放上去提示你pip下载你点击后一样会自动下载,然后就能用了。(这里提一嘴,你pip下载的东西都在C:\python3.8\Lib\site-packages 这里)

至于为什么用anaconda,我们科学计算一般都是探索性的学习,即每执行一步看一下结果,这样用Jupyter Notebook显然更方便。此外处理大量数据、一些运算类型等等也是更占优势。

当你去下载安装anaconda的时候放心安装,虽然anaconda里一样有python,但都没关系。

(注:Anaconda01是我当初自己起的文件名,你们起个好听的比如Anaconda3)

python和anaconda的区别

一般你下载anaconda的时候,也会配置环境变量,这个随便,如果你配置的在你之前配置的python下面,那么你cmd使用的时候会和以前一样,虽然有两个python,但是它会从上到下寻找,找到第一个就行了。

python和anaconda的区别

如果你换个顺序(建议一组一组的动),比如C:\Anaconda01在上面,那它就会执行C:\Anaconda01里的python,告诉你是Anaconda环境下的。(有警告别急,下面会讲。)。

python和anaconda的区别

这与我们打开Anaconda Prompt输入python是一样的。

python和anaconda的区别

注意:这是两个环境的python,举个例子:比如你以前用到requests模块下载过requests,他会在你这个python下载的site-package里,而anaconda你使用的话还要再去下载,虽然它下载的时候就自带了一些工具,但没有requests。即这两个是分开的。

哪怕你把以前下载的python删了也没问题,开打以前写的pycharm项目时无非就是把设置里的python(已经删掉了),更新换成Anaconda里的python就行,有些小东西比如某某库没下载重新下载就可以。

这里我python,anaconda两个都留着了,因为懒得弄也懒得合并,也不差那点内存。

Anaconda也有自己的命令conda,所以你就也能找到conda.exe的文件。

python和anaconda的区别

这里我python在上面,所以pip的路径来自于python3.8,而python3.8没有conda,它来自我环境变量下面的Anaconda。

python和anaconda的区别

(注意你配置的环境变量是系统的还是用户的,建议要改一起改) 

所以你Anaconda下载东西,可以直接在你anaconda环境下的python(要激活)或是anaconda prompt用pip install xx,或者直接使用conda install xx即可,它两种命令都能用。

解决警告激活问题:

python和anaconda的区别

Warning:
This Python interpreter is in a conda environment, but the environment has
not been activated.  Libraries may fail to load.  To activate this environment
please see https://conda.io/activation

这个报错是为什么呢,我们上面讲了环境变量,这里直接输入python找到的是环境变量里第一个含有python.exe的,也就是我们放在前面的C://Anaconda01,它里面的python.exe而不是排在后面的python3.8文件里的python.exe。

python和anaconda的区别

这样直接cmd执行输入python会告知你需要激活,为什么需要激活?

python和anaconda的区别

我们执行这条命令,可以看到我们当前就一个名为base的环境,对应C盘里的Anaconda01下的一堆文件,我们要用 Anaconda01里的python,就得提前告诉他我们要用的是哪个。因为以后你或许会有很多个版本的python在这里。

执行如下命令:

这个就是 激活名为base的环境: activate 名字

输入:activate base,它会自动跳一句conda.bat activate base 

python和anaconda的区别

可以看到,前面多了个(base)

此时我们再输入python

python和anaconda的区别

你看,警告没了。

这与我们prompt是一样的了

python和anaconda的区别

所以它只是个警告而已,不是报错,就是你是用的时候要先激活,告诉人家用哪个。那个名为base的环境是默认的。 

补充:anaconda相比Python增加的内容

1、Python(shell) : 标准CPython。

2、Python(shell): 相当于在命令窗口的命令提示符后输入ipython回车。pip install ipython安装的ipython用法一样。

3、Ipython QTConsole。

4、Python Notebook:直接点击打开,或者在命令提示符中输入ipython.exe notebook。

5、Jupyter QTConsole。

6、Jupyter Notebook:直接点击打开,或在终端中输入: jupyter notebook 以启动服务器;在浏览器中打开notebook页面地址“http://localhost:8888 ”。

Jupyter Notebook是一种 Web 应用,能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。

7、Spyder:直接点击打开IDE。优点就是模仿MATLAB的“工作空间”。

8、Anaconda Prompt : 命令行终端。

9、支持其他IDE,如Pycharm。

总结

到此这篇关于python和anaconda区别以及先后安装问题的文章就介绍到这了!


Tags in this post...

Python 相关文章推荐
Python线程中对join方法的运用的教程
Apr 09 Python
python查看zip包中文件及大小的方法
Jul 09 Python
使用Python的Bottle框架写一个简单的服务接口的示例
Aug 25 Python
基于scrapy的redis安装和配置方法
Jun 13 Python
python使用opencv驱动摄像头的方法
Aug 03 Python
python程序封装为win32服务的方法
Mar 07 Python
python 遍历列表提取下标和值的实例
Dec 25 Python
python读写csv文件并增加行列的实例代码
Aug 01 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 Python
keras的load_model实现加载含有参数的自定义模型
Jun 22 Python
Python利用matplotlib绘制散点图的新手教程
Nov 05 Python
Python基于百度API识别并提取图片中文字
Jun 27 Python
python神经网络Xception模型
May 06 #Python
Python使用永中文档转换服务
May 06 #Python
Python tensorflow卷积神经Inception V3网络结构
May 06 #Python
Python实现Matplotlib,Seaborn动态数据图
May 06 #Python
PYTHON InceptionV3模型的复现详解
代码复现python目标检测yolo3详解预测
讲解Python实例练习逆序输出字符串
May 06 #Python
You might like
php获取post中的json数据的实现方法
2011/06/08 PHP
PHP实现上一篇下一篇的方法实例总结
2016/09/22 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
JS 参数传递的实际应用代码分析
2009/09/13 Javascript
setTimeout与setInterval在不同浏览器下的差异
2010/01/24 Javascript
获取焦点时,利用js定时器设定时间执行动作
2010/04/02 Javascript
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
javascript实现按回车键切换焦点
2015/02/09 Javascript
移动端利用H5实现压缩图片上传功能
2017/03/29 Javascript
Vue2.0使用过程常见的一些问题总结学习
2017/04/10 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
jQuery中库的引用方法
2018/01/06 jQuery
angular2路由之routerLinkActive指令【推荐】
2018/05/30 Javascript
Vue实现双向绑定的原理以及响应式数据的方法
2018/07/02 Javascript
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
微信小程序自定义弹出层效果
2020/05/26 Javascript
解决vue动态下拉菜单 有数据未反应的问题
2020/08/06 Javascript
[00:35]2016完美“圣”典风云人物:冷冷宣传片
2016/12/08 DOTA
Python字符串拼接、截取及替换方法总结分析
2016/04/13 Python
Python使用email模块对邮件进行编码和解码的实例教程
2016/07/01 Python
Python批量提取PDF文件中文本的脚本
2018/03/14 Python
Python获取指定字符前面的所有字符方法
2018/05/02 Python
解决Ubuntu pip 安装 mysql-python包出错的问题
2018/06/11 Python
Python中函数的基本定义与调用及内置函数详解
2019/05/13 Python
Python csv文件的读写操作实例详解
2019/11/19 Python
200行python代码实现贪吃蛇游戏
2020/04/24 Python
Python 如何实现数据库表结构同步
2020/09/29 Python
StubHub西班牙:购买和出售全球活动门票
2017/06/05 全球购物
网络维护管理员的自我评价分享
2013/11/11 职场文书
教师年度考核自我鉴定
2014/01/19 职场文书
会计求职简历自我评价
2015/03/10 职场文书
如何让2019年上半年的工作总结更出色!
2019/07/01 职场文书
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript
Python中json.load()和json.loads()有哪些区别
2021/06/07 Python
Python内置数据结构列表与元组示例详解
2021/08/04 Python
AndroidStudio图片压缩工具ImgCompressPlugin使用实例
2022/08/05 Java/Android