You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ArcPy中len()函数返回值与实际字段数量不符的原因咨询

ArcPy中len(ListFields)返回值与实际字段数不符的原因及解决办法

核心原因

  • 默认过滤系统字段:arcpy.ListFields() 默认仅返回用户创建的可见字段,会自动排除ObjectID、Shape、Shape_Length、Shape_Area这类系统维护字段。如果你的要素类实际21个字段包含这些系统字段,默认调用就会少统计。
  • 隐藏/特殊类型字段未被返回:地理数据库中部分隐藏字段、域关联字段或子类型相关字段,默认也不会被ListFields列出。

解决办法

1. 强制返回所有字段

调用ListFields时指定field_type="All"参数,即可获取包括系统字段在内的所有字段:

big = arcpy.ListFields('ลพบุรี_PSU_Select', field_type="All")
boss = len(big)
print(boss)

2. 验证字段列表

可以遍历输出所有字段名称,和要素类的实际字段对比,确认遗漏项:

for field in arcpy.ListFields('ลพบุรี_PSU_Select', field_type="All"):
    print(field.name)

内容的提问来源于stack exchange,提问作者Lek Lockfour

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 08:07:06