在 Python 中从日期中减去一天
在 Python 中处理日期和时间时,通常需要执行算术运算日期时间对象。一项常见任务是从给定日期中减去一天。有几种方法可以实现此目的,但最简单的方法涉及使用 timedelta 对象。
使用 timedelta 对象
timedelta 对象表示一段时间。它可用于从日期时间对象中添加或减去特定的时间量。要从日期中减去一天,只需用适当的天数实例化一个 timedelta 对象,然后从 datetime 对象中减去它。
from datetime import datetime, timedelta # Today's date d = datetime.today() # Subtract one day days_to_subtract = 1 d -= timedelta(days=days_to_subtract) # Print the resulting date print(d)
此代码将打印昨天的日期,因为它减去了一天从当前日期算起的天。
其他方法
使用 timedelta 对象时这是从日期中减去一天的最常见方法,还有其他方法可以使用。一种替代方法是使用 time.strftime() 函数。此函数可用于将日期时间对象转换为字符串,然后可以解析生成的字符串以减去一天。
import time # Today's date d = datetime.today() # Convert to string date_str = d.strftime('%Y-%m-%d') # Parse the string and subtract a day days_to_subtract = 1 date_parts = date_str.split('-') new_date_str = '-'.join(date_parts[0:-1]) + '-' + str(int(date_parts[-1]) - days_to_subtract) # Parse the new string back into a datetime object new_date = datetime.strptime(new_date_str, '%Y-%m-%d') # Print the resulting date print(new_date)
此代码还将打印昨天的日期。虽然此方法比使用 timedelta 对象更详细,但它在某些情况下很有用,例如当您需要使用字符串格式的日期时。
以上是如何在 Python 中从日期中减去一天?的详细内容。更多信息请关注PHP中文网其他相关文章!