arcpy环境搭建「建议收藏」

arcpy环境搭建「建议收藏」1.1什么是ArcPy?ArcPy是一个以成功的arcgisscripting模块为基础并继承了arcgisscripting功能进而构建而成的站点包。目的是为以实用高效的方式通过Python执行地理数据分析、数据转换、数据管理和地图自动化创建基础。该包提供了丰富纯正的Python体验,具有代码自动完成功能(输入关键字和点即可获得该关键字所支持的属性和方法的弹出列表;从中选择

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

官方文档:http://resources.arcgis.com/zh-cn/help/main/10.1/index.html#/na/000v00000001000000/


1.1什么是ArcPy?

ArcPy 是一个以成功的 arcgisscripting 模块为基础并继承了arcgisscripting 功能进而构建而成的站点包。目的是为以实用高效的方式通过Python 执行地理数据分析、数据转换、数据管理和地图自动化创建基础。

该包提供了丰富纯正的 Python 体验,具有代码自动完成功能(输入关键字和点即可获得该关键字所支持的属性和方法的弹出列表;从中选择一个属性或方法即可将其插入),并针对每个函数、模块和类提供了参考文档。

在 Python 中使用 ArcPy的另一个主要原因是,Python是一种通用的编程语言。Python是一种支持动态输入的解释型语言,适用于交互式操作以及为称为脚本的一次性程序快速制作原型,同时其具有编写大型应用程序的强大功能。用ArcPy 编写的ArcGIS 应用程序的优势在于,可以使用由来自多个不同领域的GIS 专业人员和程序员组成的众多Python 小群体开发的附加模块。

 

1.2 ArcPy 快速浏览

利用 ArcPy 可访问地理处理工具和其他函数、类和模块,使用它们可快速轻松地创建简单或复杂工作流。使用以ArcPy 编写的ArcGIS 应用程序和脚本的优势在于,可以访问并使用由来自多个不同领域的GIS 专业人员和程序员开发的大量Python 模块。

一般来说,ArcPy按工具、环境、函数、类和模块进行组织。

1.3 ArcPy 环境搭建

直接安装ArcGIS_Desktop_105,要求10.1版本以上,最好是10.4以上。

Python 提供文档字符串功能。ArcPy 中的函数和类在包文档中使用该方法。读取这些消息以及获取帮助的方法之一是运行 Python 提供的help 命令。使用参数运行该命令会显示对象的调用签名和文档字符串。

>>> import arcpy 
>>> help(arcpy)

Jetbrains全家桶1年46,售后保障稳定

获取帮助的另一种方法是使用 ArcPy 提供的代码自动完成功能。每当输入函数名并开始输入参数时,帮助窗口中就会显示帮助信息和函数用法。

1.4 ArcPy 基本词汇

本文档介绍了要理解 ArcPy 帮助需要掌握的一些词汇。

术语 定义

Python

Python 是由 Guido van Rossum 在上世纪八十年代末构想并于 1991 年推出的一种开源编程语言。Python 得到了不断壮大的多元化用户群体的支持,具备简洁易读、语法清晰、支持动态定型等特点,并且具有大量标准库和第三方库。

ArcPy

ArcPy(通常称为 ArcPy 站点包)为用户提供了使用 Python 语言操作所有地理处理工具(包括扩展模块)的接口,并提供了多种有用的函数和类,以用于处理和查询 GIS 数据。使用 Python 和 ArcPy,可以开发出大量的用于处理地理数据的实用程序。

ArcPy 模块

模块为通常包含函数和类的 Python 文件。ArcPy 由一系列模块支持,包括数据访问模块 (arcpy.da)、制图模块 (arcpy.mp)、ArcGIS Spatial Analyst 扩展模块 模块 (arcpy.sa) 以及 ArcGIS Network Analyst 扩展模块 模块 (arcpy.na)。

ArcPy 类

类的作用类似于建筑设计蓝图。蓝图为如何创建事物提供了一个框架。类可用于创建对象,即通常所说的实例。ArcPy 类,如SpatialReferenceExtent 类,通常用作地理处理工具参数设置的快捷方式,否则的话,这些参数会使用更加复杂的字符串。

ArcPy 函数

函数是用于执行某项特定任务并能够纳入更大的程序的已定义功能。

在 ArcPy 中,所有地理处理工具均以函数形式提供,但并非所有函数都是地理处理工具。除工具之外,ArcPy 还提供多种函数来更好地支持 Python 地理处理工作流。函数(通常称为方法)可用于列出某些数据集、检索数据集的属性、在将表添加到地理数据库之前验证表名称,或执行其他许多有用的脚本任务。

独立的 Python 脚本

独立 Python 脚本是一种 .py 文件,可通过两种方式执行:通过操作系统提示符,或 Python 集成开发环境 (IDE)。

Python 脚本工具

Python 脚本工具是已添加到地理处理工具箱的 Python 脚本。添加为脚本工具后,便可以像使用其他地理处理工具一样使用此脚本工具 – 可以从工具对话框打开和执行、可以在 Python 窗口和 ModelBuilder 中使用,也可以从其他脚本和脚本工具中调用。

Python 窗口

通过 Python 窗口,用户可以快捷地在 ArcGIS 内部使用 Python,从而以交互方式运行地理处理工具和功能以及充分利用其他 Python 模块和库。此窗口还为您学习 Python 提供了一个途径。

Python 窗口可用于执行单行 Python 代码,并会将由此生成的消息输出到窗口。借助此窗口,您可以对语法进行试验和处理短代码,并可以在大型脚本范围之外对您的想法进行检验。

Python 工具箱

Python 工具箱是完全使用 Python 语言创建的地理处理工具箱。Python 工具箱及其所包含工具的外观、操作和运行方式与任何以其他方式创建的工具箱和工具类似。

Python 工具箱 (.pyt) 是一个基于 ASCII 的文件,该文件定义了工具箱和一个或多个工具。




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207181.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • anycast隧道_一种以anycast方式部署的CDN监控可用性的方法与流程

    anycast隧道_一种以anycast方式部署的CDN监控可用性的方法与流程本发明涉及一种CDN节点监控可用性的方法,具体涉及一种以anycast方式部署的CDN监控可用性的方法。背景技术:现有CDN可用性的检测方法,一般通过一些探测点检测目的CDN的可用性,在探测到失败时,认为目的CDN不可用;对于以anycast方式部署的CDN监控,得到的结果是不准确的;因为多个探测点发出的探测数据不一定到达了所有的目的CDN;导致探测数据未到达的CDN实际上没有被监控到。技术实现要…

    2022年5月10日
    39
  • NOIP 2012 文化之旅 题解[通俗易懂]

    NOIP 2012 文化之旅 题解[通俗易懂]来水一篇题解,我看洛谷上说的这道题的数据特别水,于是就写了很水的做法。题目:P1078[NOIP2012普及组]文化之旅-洛谷|计算机科学教育新生态(luogu.com.cn)题目背景本题是错题,后来被证明没有靠谱的多项式复杂度的做法。测试数据非常的水,各种玄学做法都可以通过(比如反着扫),不代表算法正确。因此本题题目和数据仅供参考。题目描述有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次(即如果他学习了某种文化,则他就不能到达其

    2022年8月22日
    5
  • SDN网络形象化(网络服务的内容是什么)

    https://blog.csdn.net/letterwuyu/article/details/79933362

    2022年4月11日
    26
  • Scanner in = new Scanner(System.in);是什么意思?

    Scanner in = new Scanner(System.in);是什么意思?Scanner是一个类,in是一个实例或者说是对象!new是一个创建对象的方法……Scanner这个类最实用的地方表现在获取控制台输入。就相当与声明这是一个人类(Scanner),这个人类是谁(in),后面新创建一个人类newScanner(system.in),system.in表示他有什么特征。总的来说就是新创建一个输入的Scanner对象,然后赋值给in。用人类的话来说…

    2022年7月20日
    20
  • int是什么_十进制数16的16进制表示格式是

    int是什么_十进制数16的16进制表示格式是Int16意思是16位整数(16bitinteger),相当于short占2个字节-32768~32767Int32意思是32位整数(32bitinteger),相当于int占4个字节-2147483648~2147483647Int64意思是64位整数(64bitinterger),相当于longlong占8个字节…

    2022年4月19日
    327
  • 常用的免费好用的DNS有哪些?

    常用的免费好用的DNS有哪些?阿酷TONY原创文章关键词:免费dns、百度dns、阿里dns、114dns、GoogleDNS2019-1-24DNS(DomainNameServer,域名服务器)是进行域名(domainname)和与之相对应的IP地址(IPaddress)转换的服务器。DNS中保存了一张域名(domainname)和与之相对应的IP地址(IPaddress)的表,以解析…

    2022年6月7日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号