Pracuję nad częścią narzędzia, które użyje arcpy.CalculateField_management, aby dodać bieżącą datę do tabeli atrybutów. Wędrowałem daleko w różnych interwebach i nie mogę znaleźć rozwiązania tego problemu.
Podczas korzystania z tego kodu otrzymuję wartość „12:00:00 AM”
input = r'C:\GIS\CARGIS\SHAPES.gdb\CRASH_ON_2013'
today = datetime.date.today()
dte = today.strftime('%m/%d/%Y')
arcpy.CalculateField_management(input,"DTCARXTRCT",dte,"PYTHON")
Korzystając z tego kodu, otrzymuję wartość „19.06.1905” od dzisiejszej daty „10/07/2014”
input = r'C:\GIS\CARGIS\SHAPES.gdb\CRASH_ON_2013'
today = datetime.date.today()
dte = str(today)
arcpy.CalculateField_management(input,"DTCARXTRCT",dte,"PYTHON")
Masz jakieś przemyślenia na temat tego, co robię źle? Chciałbym uniknąć używania kursora aktualizacji, ale zrobi to, jeśli jest to ostatnia opcja.
arcpy
field-calculator
cursor
date
zgłębiać analitykę
źródło
źródło
Odpowiedzi:
Aktualizacja Kursor wykona kalkulator polowy przez 100% czasu.
Musisz napisać to jako wyrażenie:
datetime.date.today () nie działał w kalkulatorze polowym, zmieniono na strftime.
LUB, jeśli chcesz to zrobić w lepszy sposób, w którym możesz wprowadzić własne zmienne, użyj kursora:
źródło
Spróbuj użyć:
źródło