Python
Python是一种面向对象的解释型计算机程序设计语言。
Python的强大之处在于它的应用领域范围之广,遍及人工智能、科学计算、Web开发、系统运维、大数据及云计算、金融、游戏开发等。实现其强大功能的前提,就是Python具有数量庞大且功能相对完善的标准库和第三方库。
python自身缺少numpy、matplotlib、scipy、scikit-learn....等一系列包,需要我们安装pip来导入这些包才能进行相应运算。举例:在cmd终端输入:pip install numpy就能安装numpy包了。
每次都额外安装所需要的包略麻烦,这时候我们可以采用anaconda了。anaconda是一个python发行版,包含了大量的包,使用anaconda无需再去额外安装所需包。
anaconda
Anaconda是一个免费,开源的针对数据科学处理和机器学习相关应用的Python和R语言的发行版。anaconda在管理包上是很方便的。anaconda是一个python发行版,使用它你就不需要额外安装python包了。
Anaconda = 超过1000个数据包 + Conda package + virtual environment manager (即 Anaconda Navigator)。
pycharm
PyCharm是一种Python IDE,是一款开发工具。pycharm带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。
将anaconda中的python.exe集成到pycharm中,便可以在使用pycharm的过程中使用到所有anaconda的包了。
conda
conda是包及其依赖项和环境的管理工具。conda不会影响系统自带Python。conda其实就是venv+pip的作用,也就是虚拟环境+包管理。
conda适用于Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。conda为Python项目而创造,但可适用于上述的多种语言。conda包和环境管理器包含于Anaconda的所有版本当中。
conda用于:1.快速安装、运行和升级包及其依赖项。2.在计算机中便捷地创建、保存、加载和切换环境。
conda同样是一个环境管理器。仅需要几条命令,你可以创建一个完全独立的环境来运行不同的Python版本,同时继续在你常规的环境中使用你常用的Python版本。
conda是一种通用包管理系统,是想要构建和管理任何语言的任何类型的软件。因此,它也适用于Python包。
pip
Pip代表Pip Installs Packages,是Python的官方认可的包管理器,最常用于安装在Python包索引(PyPI)上发布的包。pip编写语言Python,pip仅适用于Python。
Python中默认安装的版本:1.Python 2.7.9及后续版本:默认安装,命令为pip。2.Python 3.4及后续版本:默认安装,命令为pip3。
pip是Python包的通用管理器; conda是一个与语言无关的跨平台环境管理器。pip在任何环境中安装python包; conda安装在conda环境中装任何包。
virtualenv
用于创建一个独立的Python环境的工具。
virtualenv会为它自己的安装目录创建一个环境,这并不与其他virtualenv环境共享库;同时也可以选择性地不连接已安装的全局库。
举例:当一个程序需要使用Python 2.7版本,而另一个程序需要使用Python 3.6版本,如何同时使用这两个程序?
conda结合了pip和virtualenv的功能。
conda命令
1.conda --version( 验证conda已被安装)
2.conda update conda(更新conda至最新版本)
3.rm -rf ~/anaconda3(卸载conda,删除anaconda安装目录)
4.conda create --name
(新创建的环境将会被保存在/Users/
5.conda activate
6.conda create --name
7.conda remove --name
8.conda install --name
9.conda install
10.conda remove --name
11.conda remove
12.conda list -n
13.conda list(查看当前环境下已安装包列表)
conda install和pip install
补充:conda install
pip也可安装包:pip install
但pip只是包管理器,无法对环境进行管理。因此如果想在指定环境中使用pip进行安装包,则需要先切换到指定环境中,再使用pip命令安装包。当前环境下安装包会使用当前环境下pip进行安装。这里环境指的是conda create的环境。
conda 安装包路径是 xxxxx\Anaconda3\pkgs
pip 安装包路径在虚拟环境下是 xxxx\Anaconda3\envs\
如果使用conda install 多个环境时,对于同一个包只需要安装一次。有conda集中管理。但是如果使用pip因为每个环境安装使用的pip在不同的路径下,故会重复安装,而包会从缓存中取。
conda列出所需其他依赖包。安装包时自动安装其依赖项。可以便捷地在包的不同版本中自由切换。pip不一定会展示所需其他依赖包。安装包时或许会直接忽略依赖项而安装,仅在结果中提示错误。
pycharm 使用anaconda中的虚拟环境
Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项。不仅可以方便地安装、更新、卸载工具包,而且安装时能自动安装相应的依赖包,同时还能使用不同的虚拟环境隔离不同要求的项目。Anaconda致力于简化包管理和部署。Anaconda的包使用软件包管理系统conda进行管理。
有时候大面积的工程开发还是需要使用到pycharm。
Ubuntu中pycharm中如何使用Anaconda中的虚拟环境呢?1.先安装Anaconda和Pycharm。2.然后在Pycharm 导入 Anaconda 的python环境。
具体导入步骤如下:1.打开pycharm,File->settings->project:()->Project Interpreter。2.点击右上角的小齿轮,点击弹出来的Add Python Interpreter。3.左侧边栏中选择Conda Environment,右侧选择下边的Existing environment,然后选择Interpreter。4.找到Anaconda 下Python安装位置。base环境下的python路径类似 Anconda3/bin/python3。python 的其他版本,自己安装的版本路径都在 Anaconda3/envs/目录下,类似 Anaconda3/ envs/
总结
python是一种应用领域广泛的编程语言,但python自身缺少numpy、matplotlib、scipy、scikit-learn....等一系列包,需要我们安装pip来导入这些包才能进行相应运算。
anaconda是一个免费开源的python和r语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),致力于简化包管理和部署,包含有conda在内的各种包。anaconda的包使用软件包管理系统conda进行管理。Anaconda的数据包和和安装包都很大,Miniconda是最小的conda安装环境,相当于conda+python+pip,轻量级。miniconda就是只包含conda和conda的依赖,对于其他包,可以用conda装。
conda是包及其依赖项和环境的管理工具。conda是anaconda下面的一个包。
pip是python包下载管理工具,conda的话不仅是python 包下载管理工具,还可以下载其他语言的包(比如R语言),当然conda和pip是可以一起用的。
pycharm是一款Python编辑器,pycharm带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。将anaconda中的python.exe集成到pycharm中,便可以在使用pycharm的过程中使用到所有anaconda的包了。
复制环境anaconda
https://www.jianshu.com/p/266d80c25c71
一,在本机上,直接使用conda create -n new_env --clone old_env复制既有环境
二,如果要复制到其他机器,就要考虑导出当前环境到文件,利用文件再次创建环境
1) 导出环境
conda env export > ~/env.yaml
利用conda env export 导出的是个yaml格式的文件,该文件记录了环境名,软件源地址以及安装包列表
2) 使用yaml配置文件创建新环境
conda env create -f ~/env.yaml
参考资料:
https://www.jianshu.com/p/62f155eb6ac5
https://mynam3.xyz/2019/07/24/Ubuntu18-04-数据分析与挖掘-Anaconda-Pycharm-环境配置/
https://blog.csdn.net/ytusdc/article/details/85122892
https://blog.csdn.net/persistinlife/article/details/89298094