问题

你需要执行简单的日期操作,计算两个日期间隔多少天、某个日期后的多少天是几月几日、转换时间字符串的格式等

解决方案

使用 datetime库中的 datetime和 timedelta

其中 datetime类代表一个日期 + 时间,例如2018年4月16日11点00分00秒; timedelta类代表一个日期间隔

对于 datetime实例,可以直接进行 -数学运算得到一个 timedelta实例,也就是两个日期时间的间隔,比如计算两个日期之间有多少天

pyhton 每日小练0020

所以我们也可以让一个 datetime实例加上一个 timedelta实例,得到一个新的 datetime实例,比如说我想计算从今天开始往后20天是几月几日

pyhton 每日小练0020

并且 datetime类还提供了 strftime和 strptime进行字符串和日期时间之间的转换操作

我们可以使用 strftime将一个 datetime实例转换为字符串,也可以用 strptime将一个字符串转换为 datetime实例,并且自己控制格式

pyhton 每日小练0020

这图是截的别人的,不知道为什么strptime会报错 欸

总结

使用 datetime和 timedelta可以对日期时间很方便的操作,除了上面介绍的,还比如将一个列表中某个时间段的数据取出来、对数据库中select出来的日期时间进行操作、或者对日期字符串进行重新格式化等等

除了 datetime和 timedelta类外, datetime模块还支持 date、 time等类,如果只需要表示日期(X年X月X日),可以只使用 date类,如果只需要表示时间(X时X分X秒),可以使用 time

关于 strftime和 strptime的占位符(%Y %m %d这种)见:https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior

关于 datetime更详细的文档见https://www.cnblogs.com/maseng/p/3387845.html

https://www.liaoxuefeng.com/wiki/1016959663602400/1017648783851616

 

相关文章:

  • 2022-03-02
  • 2021-09-11
  • 2021-05-13
  • 2022-01-04
  • 2022-01-07
猜你喜欢
  • 2021-09-22
  • 2021-07-18
  • 2021-04-04
  • 2021-10-15
  • 2022-01-19
  • 2021-09-22
  • 2022-12-23
相关资源
相似解决方案