如何使用 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))
我有一个 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))