如何使用?Python?Timedelta?月份計算日期
在本篇文章中,我們將通過 timedelta 學習如何在 Python 中使用日期時間。 我們將了解如何計算當前日期或任何其他日期六個月后的日期。
讓我們深入了解一下!
Python 日期時間函數
好吧,首先,我們將了解日期時間函數的工作原理以及限制我們功能的缺點是什么。 您需要知道的第一件事是在代碼中導入日期時間。
import datetime
之后,您將創(chuàng)建日期時間的實例。 創(chuàng)建實例后,您可以使用其算術函數。
您可以減去一天和一個月。 看看下面的代碼。
#instance of datetime date = datetime.datetime(2022,2,1) #subtracting 1 from the month date = date.replace(month=date.month-1) print(date)
輸出:
2022-01-01 00:00:00
正如您在上面的代碼中看到的,在算術函數的幫助下,我們從之前設置的日期中減去了一個月。 但這里有一個問題,如果我們嘗試從上面的結果中減去一個月會怎么樣?
該代碼會給我們一個錯誤。 看一看。
date = date.replace(month=date.month-1)
輸出:
date = date.replace(month=date.month-1)
ValueError: month must be in 1..12
datetime 函數不允許我們使用算術函數并減去一整年,因為它不支持它。 同樣,如果我們在當前日期位于 12 月的最后幾天時添加 1 或 2,則會給出相同的錯誤。
# if you add 1 in date, it will throw an error because it doesn't support it date= datetime.datetime(2022,12,1) date_= date.replace(month=date_1.month+1)
輸出:
date = date.replace(month=date.month+1)
ValueError: month must be in 1..12
那么,回到問題,我們如何計算從當前日期或任何其他日期算起六個月的日期? 答案在于使用relativedelta。
使用 Python 中的relativedelta() 計算日期
在我們繼續(xù)在 Python 代碼中使用relativedelta 之前,我們需要安裝 dateutil 以從中導入relativedelta。 在命令提示符中運行以下命令來安裝 dateutil。
pip install python-dateutil
安裝后,您需要從中導入relativedelta。
from dateutil import relativedelta
之后,我們需要同時使用datetime和relativedelta來解決當前的問題。 看看下面的代碼。
date = datetime.datetime(2022,1,1) # created the instance of the datetime and set the current date as 2022,1,1
現(xiàn)在,我們將創(chuàng)建relativedelta 的實例并將月份的值設置為1。
r_date = relativedelta.relativedelta(months=1)
現(xiàn)在,我們需要做的就是從日期時間實例中減去relativedelta 實例。 它會給我們想要的答案。
# if you subtract the relativedelta variable with the date instance, it will work correctly and change the year too. new_date = date - r_date print(new_date)
輸出:
2021-12-01 00:00:00
類似地,如果我們將日期加 1,就會得到所需的輸出。
現(xiàn)在我們可以使用這種技術來計算當前日期的任何日期。 這就回答了我們如何計算從當前日期算起六個月的日期。
到此這篇關于使用 Python Timedelta 月份計算日期的文章就介紹到這了,更多相關Python月份計算日期內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python基于Tkinter實現(xiàn)的垃圾分類答題軟件代碼
這篇文章主要介紹了基于Tkinter實現(xiàn)的垃圾分類答題軟件代碼,圖形用戶界面是一種人與計算機通信的界面顯示格式,允許用戶使用鼠標等輸入設備操縱屏幕上的圖標或菜單選項,需要的朋友可以參考下2023-04-04

