アクセス テーブルに新しい一意の ID フィールドを作成しようとしています。という名前のフィールドが既に 1 つありますSITE_ID_FD
が、これは履歴です。そのフィールドの一意の値の形式は、現在の形式とは異なるため、新しい形式で新しいフィールドを作成しています。
Old Format = M001, M002, K003, K004, S005, M006, etc
New format = 12001, 12002, 12003, 12004, 12005, 12006, etc
次のスクリプトを書きました。
fc = r"Z:\test.gdb\testfc"
x = 12001
cursor = arcpy.UpdateCursor(fc)
for row in cursor:
row.setValue("SITE_ID", x)
cursor.updateRow(row)
x+= 1
これは正常に機能しますが、objectID のデフォルトの並べ替えに基づいて新しい id フィールドを設定します。最初に 2 つのフィールドを並べ替えてから、その並べ替えに基づいて新しい id フィールドを入力する必要があります (呼び出されたフィールドで並べ替えてからSITE
、古い id フィールドで並べ替えたいSITE_ID_FD
)
Pythonがソートを尊重することを期待して、2つのフィールドを手動でソートしようとしましたが、そうではありません。Pythonでこれを行う方法がわかりません。誰でも方法を提案できますか?