一、概述

mac下搭建python环境推荐使用Anaconda+Pycharm。

1.1、Anaconda

  Anaconda是一个免费开源的Python和R语言的发行版本,用于计算科学(数据科学、机器学习、大数据处理和预测分析),Anaconda致力于简化包管理和部署。Anaconda的包使用软件包管理系统Conda进行管理。超过1200万人使用Anaconda发行版本,并且Anaconda拥有超过1400个适用于Windows、Linux和MacOS的数据科学软件包。

1.1.1、下载安装

  下载链接Anaconda官网

  直接根据默认地址选择安装好即可,选择完成后会自动配置环境变量。安装完成后可以在终端输入:conda list,测试环境变量是否配置成功。

  安装完成之后会在应用程序中出现Anaconda图标。进入查看即可。

1.2、Jupyter Notebook

  Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。

  简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示的程序。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。

1.2.1、安装

  Anaconda已经自动为你安装了Jupter Notebook及其他工具,还有python中超过180个科学包及其依赖项。

  在mac环境下,在终端中输入命令:Jupyter notebook之后,系统将会自动启动并打开浏览器。

1.3、Pycharm

  安装也直接按照默认路径即可。但是安装过程需要注意:安装路径不要含有中文或空格

  项目创建:

    

  创建文件

    

  更多工具配置参看: Java-idea-安装配置优化等

二、其他说明

1、Anaconda3与zsh和oh my zsh兼容问题

在上述1.1中安装完毕后,使用终端发现还是不能使用python3,

$ python -V
Python 2.7. $ python3 -V
zsh: command not found: python3

环境以及问题

  系统为macOS,且终端的shell为zsh

  安装的是Anaconda的图形化版本

  终端运行Anaconda下的命令,如conda时出现“command not found”的问题

终端无法使用Anaconda的原因

  大部分人应该都是Anaconda的图形化版本,但在Mac系统下,Anaconda的安装程序并没有修改环境变量,这导致了我们在终端无法使用conda等命令。这是因为Anaconda默认安装在/Users/username的目录下,而终端中zsh的可访问的程序都放在/bin, /usr/bin, /usr/local/bin,有时也会放在~/bin目录下,因此我们需要修改zsh的.zshrc配置文件,将Anaconda的bin目录加到配置文件中去。

解决步骤

  终端,修改zsh的.zshrc配置文件:

  echo 'export PATH="/Users/lihongxu6/opt/anaconda3/bin:$PATH"' >> ~/.zshrc

  source /Users/lihongxu6/.zshrc

  注意安装目录以及 用户名

  为了更好一点可以在上述成功后执行:conda init zsh

  此时测试:python3 -V 或者 conda -V 即可

2、从Anaconda3无法打开终端

$ /Users/mac/.anaconda/navigator/a.tool ; exit;
/Users/mac/.anaconda/navigator/a.tool: line : syntax error near unexpected token `('
/Users/mac/.anaconda/navigator/a.tool: line : `bash --init-file <(echo "source activate /Users/mac/opt/anaconda3;")'

切换bash

chsh -s /bin/bash

然后可以正常Anaconda3打开,暂时没有找到 其他合适方案,有时在补充,使用完毕可以切换回来

chsh -s /bin/zsh

2.1、Anaconda、conda、pip、virtualenv的区别

① Anaconda

Anaconda是一个包含180+的科学包及其依赖项的发行版本。其包含的科学包包括:conda, numpy, scipy, ipython notebook等。

② conda

conda是包及其依赖项和环境的管理工具。

  适用语言:Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。
  适用平台:Windows, macOS, Linux

用途:

  ① 快速安装、运行和升级包及其依赖项。
  ② 在计算机中便捷地创建、保存、加载和切换环境。

  如果你需要的包要求不同版本的Python,你无需切换到不同的环境,因为conda同样是一个环境管理器。仅需要几条命令,你可以创建一个完全独立的环境来运行不同的Python版本,同时继续在你常规的环境中使用你常用的Python版本。——Conda官方网站
    conda为Python项目而创造,但可适用于上述的多种语言。
    conda包和环境管理器包含于Anaconda的所有版本当中。
③ pip

pip是用于安装和管理软件包的包管理器。

  ▪ pip编写语言:Python。
  ▪ Python中默认安装的版本:
    ① Python 2.7.9及后续版本:默认安装,命令为 pip
    ② Python 3.4及后续版本:默认安装,命令为 pip3

pip名称的由来:pip采用的是递归缩写进行命名的。其名字被普遍认为来源于2处:
  ① “Pip installs Packages”(“pip安装包”)
  ② “Pip installs Python”(“pip安装Python”)

④ virtualenv

virtualenv是用于创建一个独立的Python环境的工具。

  解决问题:
    当一个程序需要使用Python 2.7版本,而另一个程序需要使用Python 3.6版本,如何同时使用这两个程序?如果将所有程序都安装在系统下的默认路径,如:/usr/lib/python2.7/site-packages,当不小心升级了本不该升级的程序时,将会对其他的程序造成影响。
    如果想要安装程序并在程序运行时对其库或库的版本进行修改,都会导致程序的中断。
    在共享主机时,无法在全局 site-packages 目录中安装包。

  virtualenv将会为它自己的安装目录创建一个环境,这并不与其他virtualenv环境共享库;同时也可以选择性地不连接已安装的全局库。
⑤ pip 与 conda 比较

→ 依赖项检查
▪ pip:
① 不一定会展示所需其他依赖包。
② 安装包时或许会直接忽略依赖项而安装,仅在结果中提示错误。
▪ conda:
① 列出所需其他依赖包。
② 安装包时自动安装其依赖项。
③ 可以便捷地在包的不同版本中自由切换。
→ 环境管理
▪ pip:维护多个环境难度较大。
▪ conda:比较方便地在不同环境之间进行切换,环境管理较为简单。
→ 对系统自带Python的影响
▪ pip:在系统自带Python中包的更新/回退版本/卸载将影响其他程序。
▪ conda:不会影响系统自带Python。
→ 适用语言
▪ pip:仅适用于Python。
▪ conda:适用于Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。

⑥ conda与pip、virtualenv的关系
▪ conda结合了pip和virtualenv的功能。

 

001-mac搭建Python开发环境、Anaconda、zsh兼容的更多相关文章

  1. Eclipse Kepler SR2 + Python 3.4 + JDK7+Pydev3.4 搭建 python 开发环境(MAC)

    Eclipse Kepler SR2 + Python 3.4 + JDK7+Pydev3.4 搭建 python 开发环境(MAC) 此为mac开发环境 一:下载所需软件: Eclipse Kepl ...

  2. 2019-04-03 Anaconda+VSCode搭建python开发环境,并连接GIthub

    1.最好的Python开发环境 :Anaconda+VSCode搭建python开发环境,conda提供了python开发环境和大量的你不用安装的库 conda的环境变量: 直接在conda 中下载启 ...

  3. Sublime text 3搭建Python开发环境及常用插件安装 转载

    Sublime text 3搭建Python开发环境及常用插件安装 一.环境准备 1.官方网站地址 2.Windows 10 3.Sublime Text 3 + 官网购买license(Just a ...

  4. Python3笔记002 - 1.2 搭建python开发环境

    第1章 认识python 1.2 搭建python开发环境 1.2.1 python开发环境概述 python开发环境常见的操作系统: Windows Mac OS Linux 1.2.2 安装pyt ...

  5. 【转】使用Eclipse搭建Python开发环境

    因为要进行自动化测试,所以要搭建Python开发环境.这里将使用Eclipse+pyDev进行搭建,在此作为笔记记录下来. 需要的组件: 1.Eclipse SDK 3.7(这里将不再叙述Eclips ...

  6. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  7. Windows搭建python开发环境,python入门到精通[一]

    从大学开始玩python到现在参加工作,已经有5年了,现在的公司是一家.net的公司用到python的比较少,最近公司有新项目需要用到python,领导希望我来跟其他同事training,就有了这篇博 ...

  8. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

  9. Eclipse和PyDev搭建python开发环境

                   Eclipse和PyDev搭建python开发环境 1.1整体目标 本文档作为python学习者的新手教程,通过本教程能够了解python用途.语法.在实际工作中的应 ...

  10. [转]在Eclipse中搭建Python开发环境

    在Eclipse中搭建Python开发环境 来自: http://hi.baidu.com/hqwfreefly/blog/item/2543181d0afd9604314e150e.html 前言 ...

随机推荐

  1. H3C 40MHz频宽模式

  2. Github 上 36 个最实用的 Vue 开源库

    任何一个开发者,都是十分喜欢使用开源软件包的.因为它使开发工作变得更快速.高效.容易.如果没有开源软件包,开发工作将变得疲惫不堪,不断的重复造轮子! 下面整理了 Github 上 36 个实用的 Vu ...

  3. Django-模型层(多表操作)

    目录 1.创建模型 1.1方式一:自行创建第三张表 1.2方式二:通过ManyToManyField自动创建第三张表 1.3关于db_column和verbose_name 1.4关于on_delet ...

  4. Codeforces Round #574 (Div. 2)题解

    比赛链接 传送门 A题 题意 \(n\)个人每个人都有自己喜欢喝的\(vechorka\)口味,现在给你\(\lceil n/2\rceil\)箱\(vechorka\),每箱有两瓶,问最多能有多少个 ...

  5. js插件---WebUploader 如何接收服务端返回的数据

    js插件---WebUploader 如何接收服务端返回的数据 一.总结 一句话总结: uploadSuccess有两个参数,一个是file(上传的文件信息),一个是response(服务器返回的信息 ...

  6. 15 分钟学会使用 Git 和远程代码库

    Git是个了不起但却复杂的源代码管理系统.它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作.让我们诚实一记吧:Git是复杂的,我们不要装作它不是.但我仍然会试图教会你用(我的)基本 ...

  7. Windows环境下设置Tomcat8以服务的形式运行,不再打开Tomcat窗口

    内容简介 在Windows操作系统下,设置Tomcat8以服务的形式运行,按照以下3步来操作即可.前提条件:已安装好Java环境,并配置好java的环境变量:已下载好Tomcat8并解压到某目录. s ...

  8. MySQL备份的三中方式

    一.备份的目的 做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 二.备份需要考虑的问题 可以容忍丢失多长时间的数据:恢复数据要在多长时间内 ...

  9. python - django 使用ajax将图片上传到服务器并渲染到前端

    一.前端代码 <!doctype html> <html lang="en"> <head> <meta charset="UT ...

  10. jeecg uedit 自定义图片上传路径

    jeecg uedit 图片上传配置自定义物理路径,简单描述:我们知道 jeecg 中使用的 uedit 默认图片上传路径为 "当前项目\plug-in\ueditor\jsp\upload ...