【ArcMap】arcgis使用字段计算器编写python代码报unicode decode error: ‘ascii‘ codesc can‘t decode Oxe5 in position异常

在arcgis的字段计算器中,编写python代码块对一个有中文的属性字段进行if else判断时,报错:

unicode decode error: ‘ascii’ codesc can’t decode Oxe5 in position

百度说了是:arcmap字段计算器读取的值的编码类型是ascii,而我要判断的值是中文的,使用就报错了。
解决办法就是要判断的中文的值转为utf-8格式的编码:

b = a.encode('utf-8')

然后拿转完之后的值去做判断,判断代码如下:

def Myfunction(a):
	b = a.encode('utf-8')
	if (b == "林地")return "其他林地"
	if (b == "草地")return "其他草地"
	.....
	elif:
		return "空"
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
ArcGIS字段计算器是一个强大的工具,可以根据现有的字段或表达式进行计算,并将计算结果存储到新的或现有的字段中。以下是使用ArcGIS字段计算器的步骤: 1. 打开ArcMap软件,在图层中选择要计算的字段。 2. 单击工具栏上的“表格”按钮,在弹出菜单中选择“字段计算器”。 3. 在字段计算器对话框中,选择要计算的字段。 4. 选择要进行的计算类型,例如“指定表达式”、“Python代码块”或“VBScript代码块”。 5. 如果选择了“指定表达式”,在表达式框中输入计算表达式。可以使用字段名称、数学函数和运算符来构建表达式。例如,“[字段1] * 2”表示将字段1的值乘以2。 6. 如果选择了“Python代码块”或“VBScript代码块”,在代码框中编写相应的计算代码。在代码中可以使用字段的值以及其他Python或VBScript的语法。 7. 点击“验证”按钮以确保计算表达式或代码的正确性。 8. 点击“确定”按钮,计算器将根据所选择的计算类型和表达式对字段进行计算。 9. 计算完成后,可以在属性表中查看计算结果。 请注意以下几点: - 在计算字段之前,确保选择要计算的图层,并且在字段计算器对话框中选择了正确的字段。 - 在构建表达式或编写代码时,要确保语法正确。 - 确保在计算字段之前备份数据,以防出现错误。 通过这些步骤,您可以使用ArcGIS字段计算器字段进行计算,并为数据添加新的信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

老靳的WebGIS

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

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

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

打赏作者

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

抵扣说明:

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

余额充值