Wie kann ich mithilfe von itertools in Python 2.7 angeben, welche Teile des Codes (in Link hervorgehoben) wiederholt werden sollten? Ist der Zähl-Iterator oder Kombinations-Iterator für diesen Fall auch besser? Ich listet die Nummern von IDs (numIDs) und referenzierenden Feldern in ArcGIS auf (mit arcpy), um einen neuen ID-Typ zu erstellen. Das Ziel ist es, den Code zu verkürzen und nun jede numIDs und Zeile [x] = "...- (01)" aufzulisten. Dies ist der Code, für die ich versucht bin zu schreiben und Iterator:Python itertools Anzahl oder Kombination für ID-Felder
if numIDs == "1":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
cursor.updateRow(row)
elif numIDs == "2":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
cursor.updateRow(row)
elif numIDs == "3":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
cursor.updateRow(row)
elif numIDs == "4":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
cursor.updateRow(row)
elif numIDs == "5":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
row[7] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (05)"
cursor.updateRow(row)
elif numIDs == "6":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
row[7] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (05)"
row[8] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (06)"
cursor.updateRow(row)
elif numIDs == "7":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
row[7] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (05)"
row[8] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (06)"
row[9] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (07)"
cursor.updateRow(row)
elif numIDs == "8":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
row[7] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (05)"
row[8] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (06)"
row[9] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (07)"
row[10] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (08)"
cursor.updateRow(row)
elif numIDs == "9":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
row[7] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (05)"
row[8] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (06)"
row[9] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (07)"
row[10] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (08)"
row[11] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (09)"
cursor.updateRow(row)
elif numIDs == "10":
row[3] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (01)"
row[4] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (02)"
row[5] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (03)"
row[6] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (04)"
row[7] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (05)"
row[8] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (06)"
row[9] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (07)"
row[10] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (08)"
row[11] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (09)"
row[12] = "(" + row[0] + ") - (" + row[1] + ") - (" + row[2] + ") - (10)"
cursor.updateRow(row)
Ist 'row' eine' list' oder 'dict' Objekt? –
Für Ihre nächste Frage zu SO lesen Sie bitte [mcve]. – boardrider