(二十七)arcpy开发&关于arcpy.Describe

52 篇文章 79 订阅
37 篇文章 17 订阅

今天在学习关于工作空间相关知识,用于了下面的函数来实现判断当前输入的要素参数在哪个工作空间。其中主要运用到了arcpy.Describe函数。

def get_workspace(featureClass):
    catalogPath = os.path.dirname(featureClass.catalogPath)
    if arcpy.Describe(catalogPath).dataType == 'FeatureDataset':
        arcpy.env.workspace = arcpy.Describe(catalogPath).path
    else:
        arcpy.env.workspace = featureClass.path
    return arcpy.env.workspace

研究罢了,调试时查阅了Describe相关的参数,于是来看一下esri官方的参考文档,如下所说关于describe的种种:

Describe 函数返回的 Describe 对象包含多个属性,如数据类型、字段、索引以及许多其他属性。该对象的属性是动态的,这意味着根据所描述的数据类型,会有不同的描述属性可供使用。

Describe 属性被组织成一系列属性组。任何特定数据集都将至少获取其中一个组的属性。例如,如果要描述一个地理数据库要素类,您可访问 GDB 要素类要素类数据集属性组中的属性。所有数据,不管是哪种数据类型,总会获取通用 Describe 对象属性。

好了,说了这么多。我其实想说的是,可以使用describe查看数据的相关信息。比如shapeType、dataType、catalogPath、spatialReference等等相关信息。我们来看一下下面这一段代码。

input_fc = 'D:/Data/中国国界和省界的SHP格式数据/省界/bou2_4p.shp'
desc = arcpy.Describe(input_fc)
catalogPath = os.path.dirname(desc.catalogPath)
dataType=arcpy.Describe(catalogPath).dataType
dataType2=desc.dataType

现在我们把pycharm断点打开,一一窥探该函数会给我们带来什么样的信息。具体如下图所示。

好了,关于describe的学习就到处为此了。


                             更多内容,请微信扫二维码关注公众号,或者加入arcpy开发qq学习群:487352121

                                                                

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yGIS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值