Python获取一年前的日期
- 编程知识
- 2023-06-23
- 2
本文将从以下几个方面详细阐述在Python中获取一年前的日期,并给出相应的代码实例。
一、利用datetime模块获取一年前的日期
datetime库是Python中用于操作日期和时间的标准库,它提供了可以方便地进行日期时间算术运算的类和方法。
获取当前日期:可以使用datetime.date.today()方法获取当前的日期。
import datetime
current_date = datetime.date.today()
print(current_date) # 2021-07-07
获取一年前的日期:可以使用datetime.timedelta类来做日期的加减法。
import datetime
current_date = datetime.date.today()
one_year_ago = current_date - datetime.timedelta(days = 365)
print(one_year_ago) # 2020-07-08
二、利用dateutil库获取一年前的日期
Python的dateutil库是一个强大的用于处理日期时间的第三方库,它可以用非常简单的方式处理日期时间,而不用使用时间格式化字符串。
获取当前日期:可以使用dateutil库中的parser.parse()方法获取当前的日期。
from dateutil import parser
current_str = parser.parse('2021-07-07')
current_date = current_str.date()
print(current_date) # 2021-07-07
获取一年前的日期:可以使用dateutil库中的relativedelta类来进行日期运算。
from dateutil import parser
from dateutil.relativedelta import relativedelta
current_str = parser.parse('2021-07-07')
one_year_ago = current_str - relativedelta(years=1)
one_year_ago_date = one_year_ago.date()
print(one_year_ago_date) # 2020-07-07
三、利用time库获取一年前的日期
time是Python标准库之一,它提供了许多与时间相关的函数和结构体。
获取当前日期:可以使用time.localtime()方法获取当前的日期。
import time
current_tuple = time.localtime()
current_str = time.strftime('%Y-%m-%d', current_tuple)
current_date = datetime.datetime.strptime(current_str, '%Y-%m-%d')
print(current_date) # 2021-07-07
获取一年前的日期:可以使用time库中的mktime()和localtime()方法来进行日期运算。
import time
current_tuple = time.localtime()
current_seconds = time.mktime(current_tuple)
one_year_seconds = 60*60*24*365
one_year_ago_seconds = current_seconds - one_year_seconds
one_year_ago_tuple = time.localtime(one_year_ago_seconds)
one_year_ago_str = time.strftime('%Y-%m-%d', one_year_ago_tuple)
one_year_ago_date = datetime.datetime.strptime(one_year_ago_str, '%Y-%m-%d')
print(one_year_ago_date) # 2020-07-07
四、利用Pandas库获取一年前的日期
Pandas是Python的一个强大、灵活的数据分析库,可以方便地进行数据分析和数据可视化。
获取当前日期:可以使用Pandas库中的Timestamp.now()方法获取当前日期。
import pandas as pd
current_date = pd.Timestamp.now().date()
print(current_date) # 2021-07-07
获取一年前的日期:可以使用Pandas库中的DateOffset类来进行日期运算。
import pandas as pd
one_year_ago = pd.Timestamp.now() - pd.DateOffset(years=1)
one_year_ago_date = one_year_ago.date()
print(one_year_ago_date) # 2020-07-07
以上就是从Python中获取一年前的日期的几种方法,大家可以根据自己的需求进行选择。