Erwerb des "Monatsendes" eines bestimmten datumsbezogenen Programms. Immerhin ist es dasselbe wie die StackOverflow-Referenz ... Hinweis.
date - Get Last Day of the Month in Python - Stack Overflow
Es gibt Python, aber erstellen Sie keine Programmdatei mit einem Namen wie "calendar.py". Weil es anstelle des Standardmoduls aufgerufen wird. wenn
AttributeError: 'module' object has no attribute 'Calendar'
Und,
AttributeError: 'module' object has no attribute 'monthrange'
Wenn Sie eine solche Fehlermeldung erhalten, löschen Sie die Datei calendar.pyc
, die in Ihrem Arbeitsverzeichnis generiert werden sollte.
Zum Beispiel im Dezember 2014.
import calendar
print calendar.monthrange(2014,12)
calendar.monthrange (Jahr, Monat) Gibt den Tag und die Anzahl der Tage des Monats zurück, die nach Jahr und Monat angegeben sind.
damit,
Ausgabe
(0, 31)
Wird zurückgegeben. Dies bedeutet, dass der erste Tag des Monats Montag ist (Tag Nummer 0) und die Anzahl der Tage im angegebenen Monat 31 Tage beträgt.
Damit
import calendar
_, lastday = calendar.monthrange(2014,12)
print(lastday)
Ausgabe
31
Dies bedeutet, dass Sie es am letzten Tag des angegebenen Monats erhalten können.
Subtrahieren Sie einen Tag vom Anfang des folgenden Monats. Im Datum / Uhrzeit-Modul können Addition / Subtraktion und Größenvergleich unter Verwendung von arithmetischen Operatoren unter Verwendung der Timedelta-Unterklasse durchgeführt werden.
8.1. Datum / Uhrzeit - grundlegende Datums- und Uhrzeittypen - Python 2.7ja1-Dokumentation
import datetime
date = datetime.date(2015, 1, 1) - datetime.timedelta(days=1)
print date.day
Ausgabe
31
Ich finde, dass eine der oben genannten Methoden gut ist.
Ich denke, der erste Tag des Monats wird wie folgt benötigt.
import datetime
dt = datetime.datetime.utcnow()
# datetime.datetime(2017, 11, 26, 20, 51, 59, 745695)
dt.date() - datetime.timedelta(days=dt.day - 1)
# datetime.date(2017, 11, 1)
das ist alles.
require 'Date'
puts Date.new(2001,2,-1).day
Uo, eine Zeile ...
Ausgabe
28
Ich fühle mich wie Ruby.
Ende.
Letzter Tag des Vormonats
from datetime import datetime, timedelta
yesterday = datetime(2018, 3, 29).date()
last_day_of_previous_month = yesterday - timedelta(days=yesterday.day)
Recommended Posts