Arcpy 2.7 - 更新文件地理数据库字段格式问题
Arcpy 2.7 - Update file geodatabe field formatting question
我想弄清楚如何格式化从文件地理数据库 table 抓取的文本变量,并使用该变量更新另一个文件地理数据库 table 字段。两个 table 中的字段都是字段大小为 300 的文本字段。整个列将使用从 table1 中提取的相同值进行更新。我似乎无法正确格式化 arcpy.CalculateField_management 语句中的 var1。
为搜索的每一行创建单独的 table,并根据行 [2] 中的值构建 sql 查询。使用 sql,从第三个 table 中选择记录,并使用从行 [0] 中获取的文件名保存。将记录保存到此 table 后,我添加一个新字段并使用行 [1] 中的值更新它。直到我尝试更新 "Description" 字段时,所有这些都已正确完成。我很确定这是格式问题。
通过 SearchCursor 从 table1 中获取的值:
var = row[1]
我想更新 table2 中的字段 "Description"。我试过以下格式:
var1 = var
var1 = '!' + var + '!'
arcpy.CalculateField_management("table2", "Description", var1, "PYTHON3")
var1 = '"' + var + '"'
arcpy.CalculateField_management("table2", "Description", var1, "PYTHON3")
arcpy.CalculateField_management("table2", "Description", "'" + var1 + "'", "PYTHON3")
我很难过。我在家,代码是一项工作,这就是我没有包含它的原因。我认为这足以过去了。任何指针将不胜感激。
使用 ArcMap 10.6.1
我会根据您抛出的引号假设 var 包含一个字符串。在这种情况下你想要:
arcpy.CalculateField_management("table2", "Description", "'" + var + "'", "PYTHON3")
请注意,我使用的是 'var' 而不是 'var1'。如果 var 包含一个数字,你可以简单地做:
arcpy.CalculateField_management("table2", "Description", var, "PYTHON3")
我想弄清楚如何格式化从文件地理数据库 table 抓取的文本变量,并使用该变量更新另一个文件地理数据库 table 字段。两个 table 中的字段都是字段大小为 300 的文本字段。整个列将使用从 table1 中提取的相同值进行更新。我似乎无法正确格式化 arcpy.CalculateField_management 语句中的 var1。
为搜索的每一行创建单独的 table,并根据行 [2] 中的值构建 sql 查询。使用 sql,从第三个 table 中选择记录,并使用从行 [0] 中获取的文件名保存。将记录保存到此 table 后,我添加一个新字段并使用行 [1] 中的值更新它。直到我尝试更新 "Description" 字段时,所有这些都已正确完成。我很确定这是格式问题。
通过 SearchCursor 从 table1 中获取的值:
var = row[1]
我想更新 table2 中的字段 "Description"。我试过以下格式:
var1 = var
var1 = '!' + var + '!'
arcpy.CalculateField_management("table2", "Description", var1, "PYTHON3")
var1 = '"' + var + '"'
arcpy.CalculateField_management("table2", "Description", var1, "PYTHON3")
arcpy.CalculateField_management("table2", "Description", "'" + var1 + "'", "PYTHON3")
我很难过。我在家,代码是一项工作,这就是我没有包含它的原因。我认为这足以过去了。任何指针将不胜感激。
使用 ArcMap 10.6.1
我会根据您抛出的引号假设 var 包含一个字符串。在这种情况下你想要:
arcpy.CalculateField_management("table2", "Description", "'" + var + "'", "PYTHON3")
请注意,我使用的是 'var' 而不是 'var1'。如果 var 包含一个数字,你可以简单地做:
arcpy.CalculateField_management("table2", "Description", var, "PYTHON3")