我对ArcGIS 10.2中的场计算表达式有问题。我已经尝试了Python中的代码,结果成功了,但是由于在ArcGIS中应用代码所做的一些小改动,它无法工作。你知道吗
PGIS_TXT
是一列字符串,如下所示,第一个数字是一个包的分子,我想用Python表达式从该字符串中提取这个包。你知道吗
PGIS_TXT = ["31\c\u\n\2","22","1","134","23\c\u\n\1"]
import re
def getnumerator(PGIS_TXT):
if (len( PGIS_TXT ) > 3):
p=map(int, re.findall('\d+', PGIS_TXT ))
b=p[:-1]
return b
else:
b= int(PGIS_TXT)
return b
这些数字应该存储在我的flur_za
列中:
flur_za = getnumerator(!PGIS_TXT!)
结果应该是:
[31, 22, 1, 134, 23]
我得到一个标准错误"Error 999999"
和消息"The field is not nullable [flur_za]"
代码有什么问题?你知道吗
这个代码对我有用:
我认为问题在第一个if条件内。我用map方法得到一个包含整数值的列表,但是我需要一个整数值。.join方法有助于摆脱列表。你知道吗
相关问题 更多 >
编程相关推荐