1.4 Installation and Setup(安装和设置)

这里我们用Anaconda发行版作为Python的使用环境,推荐安装Python3.6,本书就是用Python3.6代码写成的。(译者:我使用的也是Anaconda,Python版本是3.5,与3.6没有任何使用上的差别)

译者:针对不同的操作系统,选择相应的下载方式。本书中关于安装过程的描述还是比较简单的,推荐大家直接看下面我给出的几篇文章。

1 Installing or Updating Python Packages(下载和更新Python库)

可以使用conda和pip两种工具进行库的下载和更新:

conda install package_name

但有时候一些库不在Anaconda的服务器上,上面的命令会失败。这个时候我们可以使用pip(pip是一个python的包管理工具):

pip install package_name

conda更新:

conda update package_name

pip更新:

pip install --upgrade package_name

这两个下载方式都可以用,不会冲突的。不过不要使用pip来更新用conda下载的包,这会导致库之间的依赖出现问题。所以在使用Anaconda的时候,最好先尝试使用conda来更新,不行的话再使用pip。

2 Python 2 and Python 3

本书使用的是Python3,Python2将会在2020年停止维护,所以整个社群转向Python3已经是大趋势了。

译者:而且Python3不用担心编码问题,对于中文使用环境的我们来说,非常友好。

3 Integrated Development Environments (IDEs) and Text Editors(集成开发环境和文本编辑器)

作者的开发环境是IPython+一个文本编辑器。作者通常写一段小代码,然后在IPython或Jupyter notebook中进行测试和debug。对于数据处理来说,在Jupyter中使用pandas和Numpy这样的库也是非常方便的。

不过涉及到软件开发,就需要一些功能比较强大的集成开发环境(IDE),其功能会比文本编辑器(vim和emacs)强大很多。这里推荐一下IDE:

  • PyDev (free), Eclipse平台中免费的IDE

  • PyCharm from JetBrains (subscription-based for commercial users, free for open source developers)

  • Python Tools for Visual Studio (for Windows users)

  • Spyder (free), an IDE currently shipped with Anaconda

  • Komodo IDE (commercial)

译者:我通常使用Jupyter + Atom的组合,在Jupyter中验证一小段程序,进行各种试错和验证,然后把写好的复制到Atom中。涉及到软件开发的话,我推荐PyCharm,非常易用且强大的IDE,教育版是免费的。这三样工具就能涵盖大部分的需求。

返回总目录

1.4 Installation and Setup(安装和设置)的更多相关文章

  1. RESTheart安装与设置

    作者:Maurizio Turatti, 最后在Feb 25, 2016时被 Andrea Di Cesare更新 安装与设置 1. 快速开始 Docker Vagrant Bare metal 2. ...

  2. 一个比较完整的Inno Setup 安装脚本(转)

    一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...

  3. 一个比较完整的Inno Setup 安装脚本

    一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了. [Setup] ; 注: AppId的值为单独标识该应用程序. ; 不要为其他安装程序使用相 ...

  4. VS2017、VS2019没有Setup安装项目(Visual Studio Installer)_解决方案

    前言: VS2010中有一个自带的安装部署项目,叫:Visual Studio Installer ,我们通常称为:setup项目,是一个用于自定义安装部署的项目方案.但是在VS2017,VS2019 ...

  5. dspmq dspmqver command not found(dspmq命令找不到,dspmqver主安装目录设置不正确

    [root@rhv6-64b ~]# su - mqm -bash-4.1$ dspmq -bash: dspmq: command not found(dspmq命令找不到) -bash-4.1$ ...

  6. Hadoop的安装与设置(1)

    在Ubuntu下安装与设置Hadoop的主要过程. 1. 创建Hadoop用户 创建一个用户,用户名为hadoop,在home下创建该用户的主目录,就不详细介绍了. 2. 安装Java环境 下载Lin ...

  7. linux下MySQL安装及设置

    转自:http://www.entage.net/1/viewspace-25420 1. 关于本文    本文将以MySQL 5.0.51为例,以CentOS 5为平台,讲述MySQL数据库的安装和 ...

  8. 【python】用setup安装自定义模块和包

    python解释器查找module进行加载的时候,查找的目录是存放在sys.path变量中的,sys.path变量中包含文件的当前目录.如果你想使用一个存放在其他目录的脚本,或者是其他系统的脚本,你可 ...

  9. Inno setup 安装*.inf文件_示例

    nno setup 调用*.Inf文件的条目区段名称_示例 首先自己编写一个INF文件来供 Inno setup 进行测试: ;复制以下代码到记事本然后另存为123.inf .然后把123.inf文件 ...

随机推荐

  1. ORDER BY 高级用法之CASE WHEN

    今天在公司查看一段sql SP代码,发现了一段比较奇怪的代码. 大概长这样子: Select * from tableA ORDER BY ColA , CASE END 小弟才疏学浅,咋一看到代码以 ...

  2. [日常] 搭建golang开发环境

    下载目录:https://studygolang.com/dl32位选 go1.10.linux-386.tar.gz64位选 go1.10.linux-amd64.tar.gz uname -a查看 ...

  3. java 全自动生成Excel之ExcelUtil篇(上一篇的升级版 [针对实体类对象的遍历赋值])

    看了上一篇随笔之后可以对本篇有更好的了解! 使用的poi的jar包依然是上一篇的poi-3.17.jar.... import pojo.UserPojo(上一篇里有,这里就不粘贴了!) 不废话了,直 ...

  4. java并发编程的艺术(一)---锁的基本属性

    本文来源于翁舒航的博客,点击即可跳转原文观看!!!(被转载或者拷贝走的内容可能缺失图片.视频等原文的内容) 若网站将链接屏蔽,可直接拷贝原文链接到地址栏跳转观看,原文链接:https://www.cn ...

  5. 高并发第六弹:线程封闭(ThreadLocal)

    当访问共享的可变数据时,通常需要使用同步.一种避免使用同步的方式就是不共享数据.如果仅在单线程内访问数据,就不需要同步.这种技术被称为线程封闭. 它其实就是把对象封装到一个线程里,只有一个线程能看到这 ...

  6. Tomcat启动慢原因之一 At least one JAR was scanned for TLDs yet contained no TLDs

    Tomcat启动时提示: 信息: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging f ...

  7. Algorithm——Add Two Numbers(补上周)

    一.question You are given two non-empty linked lists representing two non-negative integers. The digi ...

  8. css-扩展选择器

    (1)关联选择器 <div><p>aaaaaaaaaaaa</p></div> * 设置div标签里面p标签的样式,嵌套标签里面的样式 div p{ b ...

  9. drupal7 模糊查询接口

    $query->condition('card_no', db_like($batch_no).'%', 'LIKE');

  10. JavaScript 常见面试题

    此文内容多为 JavaScript 对数组理解及运用. 1.如何消除一个数组里面重复的元素? var arr = [1, 2, 3, 3, 4, 4, 5, 5, 6, 1]; var newArr ...