首页 > 其他分享 >Arcpy使用入门

Arcpy使用入门

时间:2023-12-04 12:23:14浏览次数:27  
标签:shp map 入门 Arcpy env 使用 print arcpy desc

2.7Python(目前ArcGIS使用)代码转化为3.5Python(目前ArcGIS Pro使用)代码----Analyze Tools For Pro (2to3命令)

基本操作

调用ArcToolbox的两种形式

#arcpy.ToolboxAlias.ToolName()
#arcpy.ToolName_ToolboxAlias()
#ToolboxAlias工具箱别名
#ToolName工具名称
arcpy.analysis.Buffer(in_features="bjboundary", out_feature_class="G:/实习文件/map/buf_Boundary.shp", buffer_distance_or_field="0.5 Unknown", line_side="FULL", line_end_type="ROUND", dissolve_option="NONE", dissolve_field="", method="PLANAR")

编写的一般流程

#默认只捕捉最严重的错误
try:
	arcpy.Buffer_analysis()
except arcpy.ExecuteError:
	print(arcpy.GetMessages())
#捕捉警告
try:
	arcpy.SetSeverityLevel(1)
	arcpy.Buffer_analysis()
except arcpy.ExecuteError:
	print(arcpy.GetMessages())

环境(Environment)设置

arcpy.env.workspace = “c:/data“#设置工作空间
arcpy.env.extent  = arcpy.Extent(0,0,100,100)#设置工作范围
arcpy.env.overwriteOutput = True#覆盖输出

空间数据的描述

desc = arcpy.Describe(r"F:\map\region.shp")#读取文件描述
print (desc.DataType)
print (desc.ShapeType)
print (desc.ShapeFieldName)
print (desc.spatialReference.name)

判断文件是否存在

# Set the current workspace
arcpy.env.workspace = r"E:\map"
 # Check for existence of data before deleting
if arcpy.Exists("roadbuffer"):
    arcpy.Delete_management("roadbuffer")

显式指定文件夹中的所有要素文件

env.workspace = "F:/map"
fcs = arcpy.ListFeatureClasses("*","polygon")#寻找所有面矢量文件
for fc in fcs:
    print fc.encode("utf-8")#含中文输出UTF-8

显示矢量文件中所有字符串类型的字段名

fds = arcpy.ListFields ('F:\\map\\region.shp', "s*","")#以列表形式获取shp文件中以s开头的字段名
for fd in fds:#for循环输出字段名
    print fd.name

标签:shp,map,入门,Arcpy,env,使用,print,arcpy,desc
From: https://www.cnblogs.com/Enkisu-China/p/17874645.html

相关文章

  • Linux上使用CMake简单例子
    记录一下自己简单在linux-Ubuntu上用cmake的例子首先安装cmakesudoaptinstallcmake然后创建一个文件夹,里面放点例子代码main.cpp//main.cpp#include<iostream>#include"demo.h"usingnamespacestd;intmain(){Demod;d.show();return0;}demo.h//de......
  • 使用AutoMapper
    1、在控制台中namespaceStudyAutoMapper{publicclassFoo{publicintID{get;set;}publicstringName{get;set;}}publicclassFooDto{publicintID{get;set;}publicstringName{get;se......
  • 【实用+干货】如何使用Clickhouse搭建百亿级用户画像平台看这一篇就够了
    背景如果你是用户,当你使用抖音、小红书的时候,假如平台能根据你的属性、偏好、行为推荐给你感兴趣的内容,那就能够为你节省大量获取内容的时间。如果你是商家,当你要进行广告投放的时候,假如平台推送的用户都是你潜在的买家,那你就可以花更少的钱,带来更大的收益。这两者背后都有一项......
  • git使用小结
    一、提交代码到master仓库1、克隆新建仓库地址gitclone"xxx"2、查看仓库状态gitstatus3、拷贝上传的代码到目录并上传gitadd.4、加备注,加说明gitcommit-m"firstcommit"5、输入用户名和邮箱gitconfig--globaluser.name"wanggangtao"gitconfig--globalus......
  • Golang使用kcp
    安装goget-ugithub.com/xtaci/kcp-goimport("fmt""github.com/xtaci/kcp-go""golang.org/x/net/ipv4""golang.org/x/net/ipv6""net")//KCP服务器funcserver(){//创建一个UDP连接u......
  • notepad++中的正则表示式使用方法
    当使用Notepad+中的正则表达式时,可以利用以下常用的元字符和语法规则来构建你的表达式:正则表达式知识准备字符匹配:\d:匹配任意数字。\w:匹配任意字母、数字或下划线。\s:匹配任意空白字符(空格、制表符等)。.:匹配除换行符外的任意字符。重复次数:*:匹配前一个元素零次或......
  • 【让AI女友跟我表白】大白话说Python+Flask入门(四)Flask Sijax的使用
    写在前面先吐槽两句,搞个mysql安装配置弄了4个小时,怎么都是外网无法访问,我靠,我特么也是服了。当然,后来我投降了,明天再说,学什么不是学,娘的,换个方向,状态依然在!Sijax是什么?代表SimpleAjax,它是一个Python/jQuery库,使用jQuery.ajax来进行AJAX请求用的。安装依赖pipinstallflas......
  • hibernate使用原生sql查询Hibernate原生SQL多表查询字段名重复问题以及解决方法
    解决方案通过将别名.*换成{别名.*}hibernate会自动为我们生成别名,具体修改如下图: ......
  • Windows驱动中使用数字签名验证控制设备访问权限
    1.背景  在一般的驱动开发时,创建了符号链接后在应用层就可以访问打开我们的设备并进行通讯。  但我们有时候不希望非自己的进程访问我们的设备并进行交互,虽然可以使用IoCreateDeviceSecure来创建有安全描述符的设备,但大数的用户账户为了方便都是管理员,因此该方法不太完整......
  • .NET 7(C#)配置使用log4net日志框架的方法
    .NET7(C#)中配置和使用log4net日志框架是一个涉及多步骤的过程。log4net是一个高度灵活且强大的日志记录库,可用于记录应用程序的运行时信息。它支持各种日志输出格式和目的地,如文件、数据库、控制台等。以下是在.NET7(C#)项目中配置和使用log4net的基本步骤:1.安装log4net......