任務
獲得今天的日期,并以此計算昨天和明天的日期。
解決方案
方案一:
無論何時遇到有關“時間變化”或者“時間差”的問題,先考慮datetime包:
import datetime
today = datetime.date.today()
yesterday = today - datetime.timedelta(days = 1)
tomorrow = today + datetime.timedelta(days = 1)
print(yesterday,today,tomorrow)
#輸出:2025-03-03 2025-03-04 2025-03-05
方案二:
在NumPy中,在NumPy.datetime64(‘today’, ‘D’)的幫助下,我們將找到今天的日期,如果我們想要今天之前的某個日期,那么我們將在np.timedelta64()的幫助下從今天減去無日期。如果我們想要今天之后的日期,那么我們將在np.timedelta64()的幫助下從今天開始加上日期編號。
import numpy as np
# for today
today = np.datetime64('today', 'D')
print("Today: ", today)
# for yesterday
yesterday = np.datetime64('today', 'D') - np.timedelta64(1, 'D')
print("Yestraday: ", yesterday)
# for tomorrow
tomorrow = np.datetime64('today', 'D') + np.timedelta64(1, 'D')
print("Tomorrow: ", tomorrow)
方案三:
如果想在日期和時間的計算上有點新花樣,可以使用第三方包,如dateutil(可以和內建的 datetime 協同工作)和經典的mx.DateTimme。舉個例子:
from dateutil import relativedelta
nextweek = today + relativedelta.relativedelta(weeks=1)
print(nextweek)#輸出:2025-03-11
無論使用哪種方案,目的是使程序保持簡單、整潔。