Quantcast
Channel: Forums - Python
Viewing all articles
Browse latest Browse all 2485

Calculating field value based on other fields

$
0
0
Hello All,

I am very new to Python, I am trying to calculate a field based on the values of three other fields.

I have been able get the process to work in Model Builder but when I export the model to Python and import the line of code that calculates the last field to the rest of the script it runs but does not populate the field. (000405 error)

My code looks like this:
Code:

## Add field - Wall_mm

arcpy.AddField_management("Svy_Pt","Wall_mm","FLOAT")

# Select Class (SDR) and Diameter then Calculate wall thickness

arcpy.SelectLayerByAttribute_management("Svy_Pt", "NEW_SELECTION", "\"Class\" = 'SDR 9' OR \"Class\" = 'SDR9' AND \"Diameter\" =  450")
arcpy.CalculateField_management("Svy_Pt", "Wall_mm", "52.8", "VB", "")

# Add field - Invert_RL

arcpy.AddField_management("Svy_Pt","Invert_RL","FLOAT")

#Calculate Invert_RL

arcpy.CalculateField_management("Svy_Pt", "Invert_RL", "( [RL]-( [Diameter]/1000))+( [Wall_mm]/1000)", "VB", "")

There are 30 different combinations for the Class and Diameter that the code scrolls through before it gets to the second add field command. It works fine in the python window in ArcGIS 10.1 up to the last line where it runs but doesn't populate the table.

I've looked at the online help where it says to use "!" for field names in Python and tried that as well as triple quotes but I think the additional brackets are confusing the arguments for the tool.

Any assistance would be appreciated.

Viewing all articles
Browse latest Browse all 2485

Trending Articles