Как получить EOMONTH (Конец месяца) текущей даты, используя Python3 - PullRequest
0 голосов
/ 08 июля 2019

У меня есть хранимая процедура SQL-сервера, и я пытаюсь скопировать ее с помощью python.Одна из вещей, которую я пытаюсь воспроизвести, - это следующая функция:

DECLARE @Anchor_DT as DATE =EOMONTH(Getdate(),-1);

Вот что я пробовал в Python3:

import datetime
datetime.date (2000, 3, 1) - datetime.timedelta (days = 1)

Вывод:

datetime.date(2000, 2, 29)

Дело в том, что я должен ввести дату (200,3,1).Я хочу иметь возможность забрать текущую дату и вывести конец месяца.Вот что я пытался, но безрезультатно:

import datetime
datetime.date.now() - datetime.timedelta (days = 1)

Есть предложения или рекомендуемые решения?

1 Ответ

1 голос
/ 08 июля 2019

А как насчет простого:

import datetime

now = datetime.datetime.today()
print(datetime.datetime(now.year, now.month + 1, 1) - datetime.timedelta(days = 1))

Или вы можете использовать метод calendar.monthrange :

import calendar
import datetime

now = datetime.datetime.today()
_, lastday = calendar.monthrange(now.year, now.month)
print(datetime.datetime(now.year, now.month, lastday)) 
...