对Arcgis中要素的属性表进行赋值时,面对几万条数据,几十种分类,需要根据不同分类进行赋值的情况下,需要使用python代码进行操作。
第一步,打开需要赋值字段的字段计算器,切换到"python"解析程序,选中“显示代码块”,
第二步,在“预逻辑脚本代码”框中输入以下脚本代码:
def fuz(f) :
if f=='13000000001':
return 'Z镇'
if f=='13000000002':
return 'W镇'
if f=='13000000003':
return 'A镇'
else:
return ' '
第三步,在字段等于结果框中输入以下函数,括号中为筛选条件的字段名称,直接双击字段名称,或手动输入时需要前后加上英文叹号。
注意事项:
- 以上代码中if筛选条件和return赋值结果,根据需求对应修改。
- if条件可以增加多条;
- def():为定义函数,后面需要有冒号;
- return返回类型应保持一致(全字符串或全数字);
- 以上为python3运行环境,若为python2,中文字符串后需解码,return '古镇'.decode( ' utf-8 ' );
- 检查每行空格,缩进为4个、8个空格。
Python 2用法
return '小镇'.decode('utf-8')
# Python 3正确写法(直接使用中文)
return '小镇'