J'essaie d'expliquer ici ce que j'essaie de faire:
J'ai un shapefile et une table dbf indépendante avec les mêmes champs. Dans la table dbf, tous les champs sont remplis mais dans la table d'attributs shapefile, un seul, nomme-le "OneField". Ce que je veux faire est de vérifier que les valeurs de "OneField" (Shapefile) sont les mêmes que les valeurs de "OneField" (table dbf) et si c'est le cas, de remplir les champs vides restants dans la table d'attributs shapefile avec ceux dans la table dbf indépendante.
Pour le moment, j'essaie simplement de copier les valeurs de la table dbf indépendante dans la table d'attributs shapefile mais je suis bloqué (lorsque j'exécute ce code, je reçois un message indiquant que pythonwin a cessé de fonctionner et qu'il ne se passe rien aux tables). Pouvez-vous me donner un coup de main s'il vous plaît?
Voici le code:
import arcpy
table = "link/to/table.dbf"
fc = "link/to/shapefile.shp"
# Create a search cursor
rowsTable = arcpy.SearchCursor(table)
# Create an update cursor
rowsFc = arcpy.UpdateCursor(fc)
for row in rowsTable:
row = row.getValue("OneField")
valueTable = row
for row in rowsFc:
row = row.setValue("OneField", valueTable)
rowsFc.updateRow(row)
row = rowsFc.next()
row = rowsTable.next()
del row, rowsFc, rowsTable
Merci beaucoup