ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

ValidateFieldName

  • 描述
  • 语法
  • 代码示例

描述

获取字符串(字段名)和工作空间路径,并基于输出地理数据库中的名称限制返回一个有效字段名。输入字符串中所有的无效字符都将替换为下划线 (_)。字段名的限制取决于所使用的特定数据库(结构化查询语言 [SQL] 或 Oracle)。

语法

ValidateFieldName (name, {workspace})
参数说明数据类型
name

要验证的字段名称。若未指定可选工作空间,则将根据当前工作空间对字段名称进行验证。

String
workspace

要验证字段名称的可选指定工作空间。此工作空间可以是文件系统,或者是个人、文件或企业级地理数据库。

若未指定工作空间,则将根据当前工作空间环境对字段名称进行验证。如果未设置工作空间环境,则将根据文件夹工作空间对字段名称进行验证。

String

返回值

数据类型说明
String

基于当前或指定工作空间返回一个包含有效字段名的字符串。

代码示例

ValidateFieldName 示例

基于工作空间返回一个有效字段名。

import arcpy
import os
class ShapeError(Exception):
    pass
try:
    # Get the input feature class and make sure it contains polygons.
    #
    in_fc = arcpy.GetParameterAsText(0)
    if arcpy.Describe(input).shapeType != "Polygon":
        # Raise a custom exception
        raise ShapeError("Input does not contain polygons")
    # Get the new field name and validate it.
    #
    field_name = arcpy.GetParameterAsText(1)
    field_name = arcpy.ValidateFieldName(field_name, os.path.dirname(in_fc))
    # Add the new field and calculate the value.
    #
    arcpy.AddField_management(in_fc, field_name, "DOUBLE")
    arcpy.CalculateField_management(in_fc,
                                    field_name,
                                    "!shape.area! / !shape.length!",
                                    "PYTHON_9.3")
except ShapeError as err:
    print(err[0])
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))

相关主题

  • ValidateTableName
  • ParseFieldName
  • 在 Python 中验证表和字段名称

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明