arcpy调用系统自带工具箱、检测文件是否存在、获取要素文件的属性(名称类型)、列出数据函数的使用

news2024/11/16 5:29:07

前言

前言其实我也不知道说什么,以往说的都是;垃圾话,现在垃圾话也说不出了,但是这是必不可少的内容!

一、调用系统工具箱

我在这里以裁剪工具为例,其他的工具类似。

那么我们怎么知道我想使用的工具在arcpy中的函数名称是什么呢?其实很简单,在arcgis中右键我们想要的工具,点击帮助即可:
在这里插入图片描述

我们往下滑,就能看到函数名称和具体的用法了,还有示例可以仿照着来写:
在这里插入图片描述
我写的示例代码如下:

import arcpy


# 设置工作空间
arcpy.env.workspace = r'E:\arcpy_study\我得学城\图层裁剪数据'

# 被裁剪的要素
source_feature = 'JFB.shp'

# 用来裁剪的要素
enter_feature = '裁剪面.shp'

# 输出要素
output_feature = '输出测试.shp'

# 裁剪要素(被裁剪的要素, 用来裁剪的要素, 裁剪完成输出的要素)
arcpy.Clip_analysis(source_feature, enter_feature, output_feature)

print '要素裁剪完成'

不仅是系统工具,我们自定义的工具也可以通过arcpy调用,如图这是我自定义的工具的帮助:
在这里插入图片描述

二、检测文件是否存在

通过 arcpy.Exists(要素文件名) 函数来判断当前工作空间中是否存在某个文件,使用这个函数之前我们要先设置工作空间,代码示例如下:

import arcpy
import os

# 检测当前工作空间是否存在该文件
def exits():
    if arcpy.Exists('JFB.shp'):
        print 'JFB.shp', 'YES'

    if arcpy.Exists('裁剪面.shp'):
        print '裁剪面.shp', 'YES'

    if arcpy.Exists('输出测试.shp'):
        print '输出测试.shp', 'YES'

if __name__ == '__main__':
    # 设置工作空间
    arcpy.env.workspace = r'E:\arcpy_study\我得学城\图层裁剪数据'

    exits()

三、获取要素文件的属性(名称类型)

通过 arcpy.Describe(要素文件) 函数来或者要素文件的属性,包括要素名称、要素类型等等。函数所拥有的方法如下:
在这里插入图片描述

示例代码如下:

# 要素文件的描述信息
def describe():
    desc = arcpy.Describe('JFB.shp')

    # 名称
    print desc.name

    # 要素类型
    print desc.featureType

    # shape类型
    print desc.shapeType

if __name__ == '__main__':
    # 设置工作空间
    arcpy.env.workspace = r'E:\arcpy_study\我得学城\图层裁剪数据'

    describe()

四、列出数据函数的使用

列出数据函数一共有九个,如下图:
在这里插入图片描述

具体的用法其实查看官方文档就能了解,我这里不做一一说明了,示例代码如下:

# 列出数据
def list():
    # 列出工作空间中的所有数据集
    print arcpy.ListDatasets()

    # 列出所有要素类
    print arcpy.ListFeatureClasses()

    # 列出所有字段
    featureName = 'JFB.shp'
    fields = arcpy.ListFields(featureName)
    for field in fields:
        print field.name,

    # 列出所有文件
    print arcpy.ListFiles()

    # 其他列出数据函数请自行查看帮助文档

if __name__ == '__main__':
    # 设置工作空间
    arcpy.env.workspace = r'E:\arcpy_study\我得学城\图层裁剪数据'

    list()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/712116.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【如何用大语言模型快速深度学习系列】从n-gram到TFIDF

感谢上一期能够进入csdn“每日推荐看”,那必然带着热情写下第二期《从n-gram到TFIDF》,这里引入一本《Speach and Language Processing》第三版翻译版本(语音与语言处理(SLP)),前半部分写的很好!里面连编辑…

软件测试的概念与过程---项目启动与需求评审

软件测试的概念与过程---项目启动与需求评审 1、项目启动参加的人员成员组成 2、需求评审 1、项目启动参加的人员 成员组成 项目经理: 为项目的成功策划和执行负总责的人产品经理: 根据市场的需求制定需求分析研发组长: 1.负责本小组的安全工作和日常研发工作 2.对组内人员…

High Performance Visual Tracking with Siamese Region Proposal Network(SiamRPN)

High Performance Visual Tracking with Siamese Region Proposal Network(SiamRPN,CVPR2018) 主要贡献: 提出了SiamRPN跟踪器,首次将端到端的离线训练方式,应用到了大尺度的图像跟踪任务上在在线跟踪过程…

Elasticsearch 分词器切词器分析器

normalization : 文档规范化 先切词,然后规范化. 规范化要规范哪些内容? 大小写; 标点符号; 时态; 复数; 规范化主要是为了匹配更精准 character filter : 字符过滤器. 标点符号 分词之前的预处理,过滤无用字符 HTML Strip Character Filter :htm…

【C3】内核模块,设备号,字符驱动,设备节点

文章目录 1.内核模块:必须包含module.h2.内核模块参数:权限位是用在sysfs文件系统里,只读权限用S_IRUGO设置2.1 extern:声明来自另一个模块 3.设备号:主设备号对应驱动程序,具有相同主设备号设备使用相同驱…

Android Studio Bot 下载使用

Android Studio Bot 下载使用 本文最新更新地址 https://gitee.com/chenjim/chenjimblog 下载 Android Studio Hedgehog 当前的新版本是 2023.1.1 Canary 10找到Studio Bot: View->Tool Windows->Studio Bot,或者下图 登录 Google 账号,注意当前限…

Echarts拼接折线图,左右两部分设置不同的样式及formatter的处理

option {tooltip: {trigger: axis,formatter: (params) > {console.log(params);if (params && params.length 2) {if (params[0].value ! -) {return 日期&#xff1a;${params[0].name}<br>${params[0].marker} ${params[0].value};} else {return 日期&a…

Spring Boot 中的分布式配置中心

Spring Boot 中的分布式配置中心 Spring Boot 是一个非常流行的 Java Web 开发框架&#xff0c;它提供了很多工具和组件来简化 Web 应用程序的开发。其中&#xff0c;分布式配置中心是 Spring Boot 中的一个非常重要的组件&#xff0c;它可以帮助我们管理应用程序中的配置信息…

Android---SQLite优化

SQLite 是一款轻型的数据库&#xff0c;是遵循 ACID 关系型数据库管理系统&#xff0c;它包含在一个相对小的 C 库中。它是 D.RichardHipp 建立的公有领域项目。它的设计目的是嵌入式的&#xff0c;而且目前已经在很多嵌入式产品中使用了它&#xff0c;它占用资源非常的低&…

日期时间~

1&#xff1a;Data类的概述 Data类的对象在Java中代表的是当前所在系统的此刻日期时间 2&#xff1a;Data的构造器 3&#xff1a;常用方法 2:SimpleDateFormat 可以对Date对象或时间毫秒值格式化成我们喜欢的时间形式。也可以把字符串的时间形式解析成日期对象 1&#xff1…

计算机网络编程 | 多路I/O转接服务器

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和…

大模型在银行业客服中心的应用

随着金融科技领域的不断发展&#xff0c;金融机构改变了传统方式&#xff0c;将更多服务从线下转移到线上&#xff0c;为了提升客户体验和效率&#xff0c;金融机构不断探索自然语言处理、机器学习等技术手段来优化客服服务&#xff0c;其中大模型技术被广泛应用&#xff0c;成…

python sorted函数多条件排序大量数据时出现错误排序

""" 求生日&#xff0c;我的理解是有四个排序条件&#xff0c;分别是&#xff0c;年月日&#xff0c;输入顺序 """ n int(input())person_list [[x for x in input().split()] for x in range(n)] print(person_list) # 给输入先后加入顺序 …

NSString 输出百分比 % 无法显示

通过 NSString 拼接显示半分比 % 符号的时候会遇到拼接了 % 但 UI 未能显示; 解决办法 在需要添加 % 处通过 %% 的表达方式即可成功输出. [NSString stringWithFormat:"%.f%%", deviceLevel * 100]; 以上便是此次分享的全部内容&#xff0c;希望能对大家有所帮助!

【TensorRT】基本介绍

TensorRT用于高效实现已经训练好的深度学习的模型的推理过程的SDK&#xff0c;能使DL模型有更快的推理速度和更高的吞吐量。官方提供Python和C两种接口&#xff0c;形式基本一致且相互对应。 1 ✨ TensorRT介绍 &#x1f35f;1.1 TensorRT的工作 分为两个时期&#xff08;构建…

flask socket版本问题

1、版本问题 问题解决 根据官方给定的兼容版本&#xff0c;从socket.io官网CDN下载最新的4.4.1版本js文件&#xff0c;https://cdn.socket.io/。 python-engineio使用版本。需要更新的javascript.socketio包&#xff0c;具体可对照官方文档Requirements部分末尾 https://flask-…

红帽宣布为RHEL 7延长4年生命周期

早前一段时间&#xff0c;红帽原本计划在2024年7月1日结束支持&#xff0c;但是Red Hat表示由于部分IT企业需要更长的时间部署和升级&#xff0c;宣布为Red Hat Enterprise Linux 7(RHEL 7)增加4年的扩展生命支持(ELS)。 据了解&#xff0c;RHEL 7于2014年发布&#xff0c;支持…

uniapp解决跨域问题

配置&#xff1a; "proxy": {"/api": {"target": "https://s2.lakala.com","changeOrigin": true,"pathRewrite": {"^/api": "/api"}}} 目标路径 https://s2.lakala.com/api/v3/labs/relat…

7.1.4 【Linux】与目录树的关系

每个文件&#xff08;不管是一般文件还是目录文件&#xff09;都会占用一个 inode &#xff0c; 且可依据文件内容的大小来分配多个 block 给该文件使用。道目录的内容在记录文件名&#xff0c; 一般文件才是实际记录数据内容的地方。 目录 当我们在 Linux 下的文件系统创建一…

STM32 创建工程(库函数)

1.新建CORE ,FWLIB,OBJ,SYSTEM,USER五个文件夹 2.新建工程选择软件包 3.OBJ文件用来存放编译中间文件 4.FWLIB官方固件库包 src 存放的是固件库的.c 文件&#xff0c;inc 存放的是对应的.h 文件 直接从模板中粘贴进即可 5.CORE 6.USER文件夹需要复制的6个文件 7. 加入上面加入…