Ich habe eine rohe Eingabe vom Benutzer wie "2015-01-30" ... für die Abfrage, die ich verwende, muss das Datum als String "yyyy-mm-dd" eingegeben werden / p>
Ich möchte das Datum um 1 Monat am Ende meiner Schleife erhöhen. An "2015-01-30" wird "2015-02-27" (idealerweise der letzte Geschäftstag des nächsten Monats). Ich hatte gehofft, dass mir jemand helfen könnte; Ich benutze PYTHON, der Grund, warum ich in datetime umwandeln möchte ist, dass ich eine Funktion gefunden habe, die einen Monat hinzufügt.
Idealerweise sind meine zwei Fragen (in Python) zu beantworten:
1) wie man die Zeichenkette "JJJJ-MM-TT" in eine Python-Datetime umwandelt und nach dem Anwenden einer Timedelta-Funktion wieder in eine Zeichenkette umwandelt
2) UND / oder wie man 1 Monat zum String "yyyy-mm-dd" hinzufügt
Sie können einen Einzeiler verwenden, der datetime
verwendet, einen Monat hinzufügt (eine definierte Funktion verwendet) und ihn wieder in eine Zeichenfolge konvertiert:
add_months
:
Vielleicht helfen Ihnen diese Beispiele, eine Idee zu bekommen:
%Vor%Wenn Sie datetime importieren, erhalten Sie mehr Optionen für die Verwaltung von Datums- und Zeitvariablen. In meinem obigen Beispiel habe ich einen Beispielcode, der Ihnen zeigt, wie es funktioniert.
Es ist auch sehr nützlich, wenn Sie zum Beispiel eine x Anzahl von Tagen, Monaten oder Jahren zu einem bestimmten Datum hinzufügen möchten.
Bearbeiten: Um Ihre Frage unter diesem Beitrag zu beantworten, schlage ich vor, dass Sie sich "Kalender" ansehen
Zum Beispiel:
%Vor% Dies gibt Ihnen den ersten Arbeitstag des Monats und die Anzahl der Tage des Monats zurück.
Damit können Sie berechnen, was der letzte Arbeitstag des Monats war.
Hier finden Sie weitere Informationen: Link
Werfen Sie auch einen Blick darauf, was Sie möglicherweise verwenden könnten: Link
So konvertieren Sie eine Zeichenfolge dieses Formats in ein Python-Datumsobjekt:
%Vor%Um zum letzten Tag des nächsten Monats zu gelangen:
%Vor% Und dieses datetime.date
-Objekt kann leicht in eine 'YYYY-MM-DD'-Zeichenfolge konvertiert werden:
BEARBEITEN:
Um den letzten Geschäftstag (d. h. Montag-Freitag) des Monats zu erhalten:
%Vor%