如何使用 Python3 获取当前日期的 EOMONTH(月末)

How to get the EOMONTH(End of month) of the current date using Python3

我有一个 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)

有什么建议或建议的解决方案吗?

怎么样:

import datetime

now = datetime.datetime.today()
print(datetime.datetime((now.year + (now.month // 12)), (now.month + 1) % 12, 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))