如何在Python中添加一分钟到Hive时间戳格式

时间:2015-06-08 04:47:25

标签: python date

我想在日期中添加一分钟,该日期是Hive时间戳格式的' YYYY-MM-DD HH24:MI:SS.FF6'使用Python

示例:1)2015-01-15 08:59:16添加分钟后的日期应该变成2015-01-15 09:00:16 2)

为此,我从日期得到了一小部分,并以模60加入1: str((int(csvRowArray [1] [10:12])+ 1)%60)

这里csvRowArray [1]是字符串格式的日期。

当分钟为59时出现问题,虽然它将分钟部分重置为0,但小时部分不会增加。当小时是23:59并且我们添加一分钟,日期应该改变时也应该工作。如果日期是月末,小时是23:59,那么即使是月份也应该改变!

Python中是否有一个函数以Hive时间戳格式读取日期并为其添加一分钟?

1 个答案:

答案 0 :(得分:3)

如果您可以将对象转换为DateTime个实例,这将有助于您使用timedelta直接操作时间。以你的例子'2015-01-15 08:59:16'

from datetime import datetime as dt
from datetime import timedelta
a='2015-01-15 08:59:16'
dt_obj = dt.strptime(a, '%Y-%m-%d %H:%M:%S')
dt_with_one_more_min = dt_obj + timedelta(minutes=1)
print('original time = {}'.format(dt_obj))
print('new time = {}'.format(dt_with_one_more_min))

这将得到以下结果:

original time = 2015-01-15 08:59:16
new time = 2015-01-15 09:00:16

我的例子是分钟,但你可以尝试使用timedelta进行其他修改,它会起作用。