Python中的DateTime和TimeDelta详解

 更新时间:2023年07月27日 11:14:18   作者:逃逸的卡路里  
这篇文章主要介绍了Python中的DateTime和TimeDelta详解,在Python中,date,time和datetime类提供了许多函数来处理日期、时间和时间间隔,每当您操纵日期或时间时,都需要导入DateTime函数,需要的朋友可以参考下

前言

在Python中,date,time和datetime类提供了许多函数来处理日期、时间和时间间隔(time interval)。

Date和DateTime是Python中的对象,因此在操作它们时,实际上是在操作对象,而不是字符串或时间戳。

每当您操纵日期或时间时,都需要导入DateTime函数。

一、DateTime类

Python中的DateTime类主要分为5类。

  • date —日期(月,日,年)
  • time-一天中时间(小时,分钟,秒,微秒)
  • DateTime-时间和日期的组合(月,日,年,小时,秒,微秒)
  • time delta —用于操纵日期的时间段
  • tzinfo —处理时区的抽象类

二、使用

1.引入库

代码如下(示例):

# 在为DateTime运行代码之前,请务必导入date-time模块
from datetime import date
from datetime import time
from datetime import datetime
# 这些import语句是Python库中预定义的功能,可让您无需编写任何代码即可操纵日期和时间。
# 创建日期对象的实例。
def main():
	today = date.today()
	print("今天的日期是:", today)
# 打印日期并运行代码。
main()

在这里插入图片描述

2.使用date.today()打印日期

date.today函数具有与之关联的几个属性。我们可以单独打印日/月/年以及其他内容

代码如下(示例):

from datetime import date
from datetime import time
from datetime import datetime
def main():
	today = date.today()
	print("今天的日期是:", today)
	# 打印日期的拆分格式
	print("拆分日期:", today.year, today.month, today.day)
main()

在这里插入图片描述

from datetime import date
from datetime import time
from datetime import datetime
def main():
	today = date.today()
	wd = today.weekday()
	days = ["星期一","星期二","星期三","星期四","星期五","星期六","星期日"]
	print("今天是星期几:",wd)
	print("今天应该是星期几呢?", days[wd])
main()

在这里插入图片描述

3.Python当前日期和时间:now() today()

代码示例如下:

# 像日期对象一样,我们在Python中也可以使用日期时间(datetime)对象。它给出日期和时间小时、分钟、秒和毫秒。
from datetime import date
from datetime import time
from datetime import datetime
def main():
	today = datetime.now()
	print("当前时间是:",today)
main()

在这里插入图片描述

# 使用datetime对象,您还可以调用time类。
# 假设我们只想打印当前时间而不显示日期。
from datetime import date
from datetime import time
from datetime import datetime
def main():
	t = datetime.time(datetime.now())
	print("当前时间是:",t)
main()

在这里插入图片描述

我们将工作日索引应用到工作日的ArrayList中,以了解今天是哪一天

根据当前工作日的不同,为工作日的运算符(wd)分配(0–6)编号。在这里,我们声明了几天的列表数组(星期一,星期二,星期三…星期日)。 使用该索引值可以知道是哪一天。在我们的例子中,它是#3,代表星期四,因此在输出中,它将打印出“今天是星期四”。

4.如何使用 Strftime()格式化日期和时间输出

到目前为止,我们已经了解了如何在Python中使用DateTime和Date对象。我们将进一步学习如何使用格式化功能来格式化时间和日期。

1. 首先,我们将看到一个简单的如何格式化年份的步骤。通过一个例子来理解。

from datetime import date
from datetime import time
from datetime import datetime
def main():
	now = datetime.now()
	print(now.strftime("%Y"))
main()

在这里插入图片描述

我们使用了“strftime函数”用于格式化。 此函数使用不同的控制码提供输出。 每个控制代码类似于不同的参数,例如年,月,周日和日期[(%y /%Y-年),(%a /%A-工作日,(%b /%B-月),(%d-月中的天)]]。 在我们的例子中,(“%Y”)类似于年份,它打印出带有世纪的完整年份(例如,2023年)。

2.现在,如果将(“%Y”)替换为小写字母(即“%y”)并执行代码,则仅输出(23),而不显示(2023)。年份的世纪将不会显示

from datetime import date
from datetime import time
from datetime import datetime
def main():
	now = datetime.now()
	print(now.strftime("%y"))
main()

在这里插入图片描述

3.Strftime函数可以分别声明日期,日,月和年。同样,在strftime函数中对控制代码进行小的更改后,即可设置文本样式的格式。

from datetime import date
from datetime import time
from datetime import datetime
def main():
	now = datetime.now()
	print(now.strftime("%Y %B %d,%a"))
main()

在strftime函数内部,如果将(%a)替换为大写字母A,即(%A),输出将输出为“Thursday”,而不是缩写“Thu”。

在这里插入图片描述

4.借助“strftime”函数,我们还可以检索本地系统时间,日期或日期时间。

%C-表示本地日期和时间

%x-表示本地日期

%X-表示本地时间

from datetime import date
from datetime import time
from datetime import datetime
def main():
	now = datetime.now()
	print(now.strftime("%c"))
	print(now.strftime("%x"))
	print(now.strftime("%X"))
main()

在这里插入图片描述

5.“strftime”函数允许您以24小时格式或12小时格式调用时间。

from datetime import date
from datetime import time
from datetime import datetime
def main():
	now = datetime.now()
	print(now.strftime("%I:%M:%S %p"))
	print(now.strftime("%H:%M"))
main()

在这里插入图片描述

总结

使用“strftime”函数更改年份的格式 分别打印日期、日期、月份和年份, 格式化时间为12小时或24小时模式

5.如何使用Timedelta对象

使用timedelta对象,您可以计算未来和过去的时间。换句话说,预测任何特殊的日期,日期或时间都是一个时间跨度。

请记住,此功能不是用于打印时间或日期,而是用于计算未来或过去的时间内容。让我们看一个例子,以更好地理解它。

1.要运行Timedelta对象,您需要先声明import语句,然后执行代码

from datetime import timedelta
print(timedelta(days = 365, hours = 8, minutes = 15))

在这里插入图片描述

2.让我们获取今天的日期和时间,以检查我们的导入声明是否运行良好。执行代码后,它会打印出今天的日期

from datetime import datetime
from datetime import timedelta
print(timedelta(days = 365, hours = 8, minutes = 15))
print("今天是:" ,str(datetime.now()))

在这里插入图片描述

3.我们将看到如何通过delta对象计算离现在now()一年后的日期。当我们运行代码时,它将给出预期的输出。

from datetime import datetime
from datetime import timedelta
print(timedelta(days = 365, hours = 8, minutes = 15))
print("今天是:" ,str(datetime.now()))
print("一年之后的今天是:", str(datetime.now() + timedelta(days = 365)))

在这里插入图片描述

4.如何使用时间增量(time delta)从当前日期和时间计算未来日期的另一个示例

from datetime import datetime
from datetime import timedelta
print(timedelta(days = 365, hours = 8, minutes = 15))
print("今天是:" ,str(datetime.now()))
print("一个星期后四天的是:", str(datetime.now() + timedelta(weeks = 1, days = 4)))

在这里插入图片描述

总结

使用timedelta对象,您可以计算未来和过去的时间 计算从当前时间到特殊日期(生日)剩余的总天数 计算从当前时间算起的特定天(生日)经过的总天数

到此这篇关于Python中的DateTime和TimeDelta详解的文章就介绍到这了,更多相关Python中的日期时间函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于SQLAlchemy实现操作MySQL并执行原生sql语句

    基于SQLAlchemy实现操作MySQL并执行原生sql语句

    这篇文章主要介绍了基于SQLAlchemy实现操作MySQL并执行原生sql语句,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Python中如何使用if语句处理列表实例代码

    Python中如何使用if语句处理列表实例代码

    这篇文章主要给大家介绍了关于在Python中如何使用if语句处理列表的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-02-02
  • Python中的迭代器你了解吗

    Python中的迭代器你了解吗

    迭代器是一种特殊的对象,它实现了迭代协议,允许按照一定的顺序逐个访问元素,本文就来带大家深入了解一下Python中迭代器的使用,需要的可以参考下
    2023-05-05
  • Python optparse模块及简单使用

    Python optparse模块及简单使用

    optparse,是一个更够让程序设计人员轻松设计出简单明了、易于使用、符合标准的Unix命令例程式的Python模块,生成使用和帮助信息,这篇文章主要介绍了Python optparse模块简单使用,需要的朋友可以参考下
    2022-12-12
  • OpenCV图像形态学的实现

    OpenCV图像形态学的实现

    本文主要介绍了OpenCV图像形态学的实现,包括腐蚀、膨胀、开运算、闭运算、梯度运算、顶帽运算和黑帽运算,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2025-04-04
  • Python利用contextvars实现管理上下文变量

    Python利用contextvars实现管理上下文变量

    Python 在 3.7 的时候引入了一个模块:contextvars,从名字上很容易看出它指的是上下文变量。所以本文就来和大家详细讲讲如何使用contextvars实现管理上下文变量,需要的可以参考一下
    2022-07-07
  • 浅谈pycharm下找不到sqlalchemy的问题

    浅谈pycharm下找不到sqlalchemy的问题

    今天小编就为大家分享一篇浅谈pycharm下找不到sqlalchemy的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 在Python中使用gRPC的方法示例

    在Python中使用gRPC的方法示例

    这篇文章主要介绍了在Python中使用gRPC的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Python面试之os.system()和os.popen()的区别详析

    Python面试之os.system()和os.popen()的区别详析

    Python调用Shell,有两种方法:os.system(cmd)或os.popen(cmd)脚本执行过程中的输出内容,下面这篇文章主要给大家介绍了关于Python面试之os.system()和os.popen()区别的相关资料,需要的朋友可以参考下
    2022-06-06
  • Python 实现字符串中指定位置插入一个字符

    Python 实现字符串中指定位置插入一个字符

    下面小编就为大家分享一篇Python 实现字符串中指定位置插入一个字符,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05

最新评论