nimmt ich ein neues datetime.date
wie Objekt erstellen tat__init__ Methode, die mehrere Argumente
class WorkDate(datetime.date):
pass
Die Funktionalität dieser WorkDate
ist (nicht wichtig für diese Frage), dass, wenn Sie ein timedelta
Objekt hinzufügen, wird es nur bewegen zu einem Wochentag Datum. dh wenn Sie einen timedelta(1)
an einem Freitag datieren, der von WorkDate
datiert wird, wird es den nächsten Montag datieren WorkDate
.
Wie kann ich
__init__
WorkDate
durch eines dieser beiden Verfahren gleiche Ergebnis
x = WorkDate(2017, 8, 3)
y = WorkDate(datetime.date(2017, 8, 3))
Ich versuchte dies aber nicht funktioniert für die Initialisierung mit Datum Objekt
class WorkDate(datetime.date):
def __init__(self, *args):
if len(args) == 3:
super(WorkDate, self).__init__(args[0], args[1], args[2])
elif len(args) == 1:
self.year = args[0].year
self.month = args[0].month
self.day = args[0].day
Wenn der Betrogene Sie nicht hilft, lassen Sie uns wissen, wie und Warum. –
@ cᴏʟᴅsᴘᴇᴇᴅ kann nicht verstehen, warum ich nicht mit Datumsobjekt in meinem Code initialisieren kann. Es sagt * eine Ganzzahl ist erforderlich *, wenn ich versuche, mit einem Datumobjekt zu konstruieren – user2332665