1.3 Python的安装与使用

在众多的编程语言中,Python比较适合于遥感模式识别的实验课程。

1.3.1 选择Python的理由

(1) 学习成本低,受欢迎

Python使用的人越来越多,越来越受人欢迎。使用的人越多,已有的代码工具就越多,学习成本越低。可以在Google Trends 上面查看Python和其他语言的热度图,其中的热度代表该词汇在该地区搜索词汇中所占比率:

pythonmap

(2) Arcgis 的脚本语言

Arcgis以Python为脚本语言,可以进行批量处理,使得制图和处理的流程全自动化.

arcgis

1.3.2 Python的安装

Python的安装推荐使用Anaconda工具包,自带了常用的一些代码库。

Python语言简单灵活,开发效率高,有众多的机器学习算法的代码库支持。从Arcgis 10.0版本开始,Arcgis支持Python脚本调用。Ipython是Python的一个工具包,可以进行交互式的操作与输出。

本节将介绍关于 Ipython Notebook 的四个内容: 1. 功能用途 2. 软件安装 3. 使用方法 4. LaTeX与Markdown

(1) IPython Notebook的功能与用途

Ipython Notebook应用程序,是2011年由美国加州大学伯克利分校数据科学家Fernando Pérez和加州州立综合科技大学计算物理学家Brian Granger带领的研究团队共同开发的。它是一个基于python语言的交互式命令界面。最大的亮点在于,以笔机的形式记录显示: * 文章思路 * 编码过程 * 代码注释 * 输出结果 * 分享演示

不同于普通的注释,它的注释可以包含以下内容: 1. 公式:LaTeX数学公式 2. 文本:Markdown文本 3. 图表 4. 视频

Imageofjupyter

IPython 4.0正式发布后,IPython分离成IPython和Jupyter,支持Ruby、R语言等,所以在左上角可以看到Jupyter的标识。这样的一款软件是易于使用的,按照下面的步骤就可以轻松获取它。

(2) 软件安装

有多种安装Ipython Notebook的方式,推荐使用Anaconda安装包。Anaconda集成了大量的常用数据分析、科学计算的库,可以在Windows、Mac和Linux下一键安装。Python有很多的版本,Anaconda都支持。这里我们使用Python 3.6 版本的Anaconda安装包,这个版本的python代码库是功能最全面的。

软件可以一键安装,安装包下载地址为: https://www.continuum.io/downloads

(3) 运行启动

  1. 在windows系统下,选择自己的目录;

  2. 在空白处,点击“shift+右键”,弹出菜单;

  3. 在菜单中选择“打开命令行”选项;

  4. 在命令行中输入:

jupyter notebook

将会自动在浏览器中弹出软件页面。

jupyter

(4) 使用方法

这里简单介绍最常用到的操作。

%pylab 可以导入常用的函数名称空间,直接使用常用函数。

[1]:
%pylab
Using matplotlib backend: MacOSX
Populating the interactive namespace from numpy and matplotlib

inline 是把显示的图片嵌入到notebook中,而不是单独显示一个窗口。

[2]:
%pylab inline
Populating the interactive namespace from numpy and matplotlib

Shift+Tab 快捷键用来快速查看函数信息。

[3]:
linspace
[3]:
<function numpy.core.function_base.linspace>

函数名后面跟随一个问号,可以查看函数的帮助信息。

[4]:
sum?

类名后面跟随两个问号,可以显示定义类的源码

[5]:
sum??

%run 命令把文件中的代码执行一遍,并不复制。

%load 命令会把文件中的代码复制到notebook里。

%load PythonCode/lorenz.py

(5) Python 语言快速概览

课程中将简单地介绍Python语言的语法,不涉及具体编程应用的内容。对于完全不熟悉Python语言的同学,还需要适当额外补充相应的知识和练习。涉及到的Python编程为以下主题: * 数据基本类型,表达式,变量及其赋值 * 基本数据结构 * 控制语句 * 函数和对象

推荐书目为:

Barry P. Head First Python: A Brain-Friendly Guide[M]. ” O’Reilly Media, Inc.”, 2016.

Hetland M L. Python 基础教程[J]. 2014.