Python获取当前日期和日期差计算

「爱情、让人受尽委屈。」 2022-03-28 04:42 587阅读 0赞

在Python中获取日期和时间很简单,主要使用time和datetime包,PHP计算时间差代码

1、获取当前时间并格式化

  1. from dateutil import rrule
  2. from datetime import datetime
  3. import time
  4. #获取日期,格式化yyyy-mm-dd hh:mm:ss
  5. #第一种方式
  6. strtime = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
  7. print(strtime)
  8. print(type(strtime))
  9. #输出:2019-01-08 16:44:08
  10. #输出:<class 'str'>
  11. #第二种方式
  12. now = datetime.now()
  13. print(now.strftime('%Y-%m-%d %H:%M:%S'))
  14. #输出:2019-01-08 16:44:08

可以发现,strftime将时间对象转换成了str。

2、str转日期

  1. from dateutil import rrule
  2. from datetime import datetime
  3. import time
  4. #str转日期
  5. #第一种方式
  6. initDate = datetime.strptime('2019-01-09 10:11:11','%Y-%m-%d %H:%M:%S')
  7. print(initDate)
  8. print(type(initDate))
  9. #输出:2019-01-09 10:11:11
  10. # <class 'datetime.datetime'>
  11. #第二种方式
  12. secondDate = time.strptime('2019-01-09 10:11:11','%Y-%m-%d %H:%M:%S')
  13. print(secondDate)
  14. print(type(secondDate))
  15. #输出:time.struct_time(tm_year=2019, tm_mon=1, tm_mday=9, tm_hour=10, tm_min=11, tm_sec=11, tm_wday=2, tm_yday=9, tm_isdst=-1)
  16. # class 'time.struct_time'>

3、日期时间差

  1. from dateutil import rrule
  2. from datetime import datetime
  3. import time
  4. #计算日期差
  5. untilYear = 2018
  6. untilMonth = 5
  7. untilDay = 1
  8. # 2018年第一天
  9. firstDay = datetime(untilYear,1,1)
  10. endDay = datetime(untilYear,untilMonth,untilDay)
  11. #rrule.DAILY计算天差,此外还有 星期(WEEKLY),年(YEARLY)
  12. days = rrule.rrule(freq = rrule.DAILY,dtstart=firstDay,until=endDay)
  13. print('相差:',days.count(),'天')

此处主要使用到了dateutil的rrule。

关于python的日期和时间,用法很多,此处只记录自己比较常用的部分,后面有时间再学习一下时间戳。

Python版本:3.7

参考文档:

https://docs.python.org/3/library/datetime.html\#strftime-strptime-behavior

https://dateutil.readthedocs.io/en/stable/rrule.html\#rrule-examples

原文地址:https://www.cnblogs.com/tobeymarshall/p/10240001.html

发表评论

表情:
评论列表 (有 0 条评论,587人围观)

还没有评论,来说两句吧...

相关阅读