亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

如何使用?Python?Timedelta?月份計(jì)算日期

 更新時(shí)間:2023年10月18日 10:35:20   作者:跡憶客  
在本篇文章中,我們將通過?timedelta?學(xué)習(xí)如何在?Python?中使用日期時(shí)間,?我們將了解如何計(jì)算當(dāng)前日期或任何其他日期六個(gè)月后的日期,本文通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧

在本篇文章中,我們將通過 timedelta 學(xué)習(xí)如何在 Python 中使用日期時(shí)間。 我們將了解如何計(jì)算當(dāng)前日期或任何其他日期六個(gè)月后的日期。

讓我們深入了解一下!

Python 日期時(shí)間函數(shù)

好吧,首先,我們將了解日期時(shí)間函數(shù)的工作原理以及限制我們功能的缺點(diǎn)是什么。 您需要知道的第一件事是在代碼中導(dǎo)入日期時(shí)間。

import datetime

之后,您將創(chuàng)建日期時(shí)間的實(shí)例。 創(chuàng)建實(shí)例后,您可以使用其算術(shù)函數(shù)。

您可以減去一天和一個(gè)月。 看看下面的代碼。

#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

正如您在上面的代碼中看到的,在算術(shù)函數(shù)的幫助下,我們從之前設(shè)置的日期中減去了一個(gè)月。 但這里有一個(gè)問題,如果我們嘗試從上面的結(jié)果中減去一個(gè)月會怎么樣?

該代碼會給我們一個(gè)錯(cuò)誤。 看一看。

date = date.replace(month=date.month-1)

輸出:

    date = date.replace(month=date.month-1)
ValueError: month must be in 1..12

datetime 函數(shù)不允許我們使用算術(shù)函數(shù)并減去一整年,因?yàn)樗恢С炙?同樣,如果我們在當(dāng)前日期位于 12 月的最后幾天時(shí)添加 1 或 2,則會給出相同的錯(cuò)誤。

# 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

那么,回到問題,我們?nèi)绾斡?jì)算從當(dāng)前日期或任何其他日期算起六個(gè)月的日期? 答案在于使用relativedelta。

使用 Python 中的relativedelta() 計(jì)算日期

在我們繼續(xù)在 Python 代碼中使用relativedelta 之前,我們需要安裝 dateutil 以從中導(dǎo)入relativedelta。 在命令提示符中運(yùn)行以下命令來安裝 dateutil。

pip install python-dateutil

安裝后,您需要從中導(dǎo)入relativedelta。

from dateutil import relativedelta

之后,我們需要同時(shí)使用datetime和relativedelta來解決當(dāng)前的問題。 看看下面的代碼。

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 的實(shí)例并將月份的值設(shè)置為1。

r_date = relativedelta.relativedelta(months=1)

現(xiàn)在,我們需要做的就是從日期時(shí)間實(shí)例中減去relativedelta 實(shí)例。 它會給我們想要的答案。

# 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)在我們可以使用這種技術(shù)來計(jì)算當(dāng)前日期的任何日期。 這就回答了我們?nèi)绾斡?jì)算從當(dāng)前日期算起六個(gè)月的日期。

到此這篇關(guān)于使用 Python Timedelta 月份計(jì)算日期的文章就介紹到這了,更多相關(guān)Python月份計(jì)算日期內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論