Python实现日期格式化与日期的天数运算

Posted 浅然言而信

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python实现日期格式化与日期的天数运算相关的知识,希望对你有一定的参考价值。

一、场景

获取两个日期,其类型为datetime.datetime类型,例如该格式2018-05-31 15:52:03

需求一:
现在需要将该格式进行格式化为2018-05-31
需求二:
运算获取的两个时间之间的天数差值

二、场景分析

1、解决需求一需要对其类型转化+格式化
2、解决需求二需要使用相应的datetime的方法,并且做运算需要其类型为datetime.datetime类型


三、解决方案

Py实现日期的格式化

#此时result_time类型为str
result_time = ptime.strftime('%Y-%m-%d')

Py实现日期的天数运算

  • 先转化为str类型,再转化为datetime.datetime类型进行加减,目的是为了让 2018-05-31 15:52:03转化为2018-05-31 00:00:00

        result_time1 = ptime_1.strftime('%Y-%m-%d')
        d1 = datetime.datetime.strptime(result_time1, "%Y-%m-%d")
    
        result_time2 = ptime_2.strftime('%Y-%m-%d')
        d2 = datetime.datetime.strptime(result_time2, "%Y-%m-%d")
    
        d = d1 - d2
        #只要d.days即可获取到相差的天数的整型数据
        return d.days
    

注意:若要在datetime.datetime类型的时间数据上加一天,可采用以下方法(time是datetime.datetime类型)

#days=1代表加一天,后面的值即代表加几天
time = time + datetime.timedelta(days=1)

以上是关于Python实现日期格式化与日期的天数运算的主要内容,如果未能解决你的问题,请参考以下文章

js计算两个日期的天数差值

日期类问题-日期差值

在Sql语句中怎样计算出两个日期的差值

linq to sql 如何返回两个日期的天数差值

C++类与对象第三篇:日期类的实现

C++实现日期相关OJ题