为什么我在这里NameError
?
基本的python:
table = r'D:\output.gdb\table'
m = 0.01
arcpy.CalculateField_management(table, 'FIELD_B', '!FIELD_A! * m', 'PYTHON')
错误说明:NameError: name 'm' is not defined
为什么这样,因为我刚刚在上面的行中定义了'm'
?
答案 0 :(得分:1)
m = 0.01
arcpy.CalculateField_management(table, 'FIELD_B', '!FIELD_A! * m', 'PYTHON')
您已将!FIELD_A! * m
作为参数传递给CalculateField
工具,该工具不知道m
是什么 - 它是一个独立的功能。
如果您想将m
视为变量,请将其替换为字符串:
'!FIELD_A! * {}'.format(m)