Python中的datetime包

发布时间:2022-04-14 09:48:34 人气:218 作者:多测师

  1) 简介

  datetime包是基于time包的一个高级包, 为我们提供了多一层的便利。

  datetime可以理解为date和time两个组成部分。date是指年月日构成的日期(相当于日历),time是指时分秒微秒构成的一天24小时中的具体时间(相当于手表)。你可以将这两个分开管理(datetime.date类,datetime.time类),也可以将两者合在一起(datetime.datetime类)。由于其构造大同小异,我们将只介绍datetime.datetime类。

  比如说我现在看到的时间,是2020年4月14日21时30分,我们可以用如下方式表达:

  import datetime

  t = datetime.datetime(2020,4,14,21,30)

  print(t)

  所返回的t有如下属性:

  hour, minute, second, microsecond

  year, month, day, weekday # weekday表示周几

Python中的datetime包

  2) 运算

  datetime包还定义了时间间隔对象(timedelta)。一个时间点(datetime)加上一个时间间隔(timedelta)可以得到一个新的时间点(datetime)。比如今天的上午3点加上5个小时得到今天的上午8点。同理,两个时间点相减会得到一个时间间隔。

  import datetime

  t = datetime.datetime(2012,9,3,21,30)t_next = datetime.datetime(2012,9,5,23,30)

  delta1 = datetime.timedelta(seconds = 600)

  delta2 = datetime.timedelta(weeks = 3)

  print(t + delta1)

  print(t + delta2)

  print(t_next - t)

  在给datetime.timedelta传递参数(如上的seconds和weeks)的时候,还可以是days, hours, milliseconds, microseconds。

  两个datetime对象还可以进行比较。比如使用上面的t和t_next:

  print(t > t_next)

  3) datetime对象与字符串转换

  假如我们有一个的字符串,我们如何将它转换成为datetime对象呢?

  一个方法是用上一讲的正则表达式来搜索字符串。但时间信息实际上有很明显的特征,我们可以用格式化读取的方式读取时间信息。

  from datetime import datetimeformat = "output-%Y-%m-%d-%H%M%S.txt" str = "output-1997-12-23-030000.txt" t = datetime.strptime(str, format)

  strptime, p = parsing

  我们通过format来告知Python我们的str字符串中包含的日期的格式。在format中,%Y表示年所出现的位置, %m表示月份所出现的位置……。

  反过来,我们也可以调用datetime对象的strftime()方法,来将datetime对象转换为特定格式的字符串。比如上面所定义的t_next,

  print(t_next.strftime(format))

  strftime, f = formatting

  具体的格式写法可参阅官方文档。 如果是Linux系统,也可查阅date命令的手册($man date),两者相通。

  以上内容为大家介绍了Python中的datetime包,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


上一篇:Python中的time包
下一篇:Python的动态类型
返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线