如何结合日期和时间?

我想在日期时间中添加时间。我的初始日期时间是:initial_datetime='2015-11-03 08:05:22'and 是一个字符串,this_hourandthis_min也是字符串。我用:


time='-7:00'

time = time.split(':')

this_hour = time[0]

this_min = time[1]

initial_datetime='2015-11-03 08:05:22'

new_date = datetime.combine(initial_datetime, time(this_hour, this_min))  

           + timedelta(hours=4)

但是出现了一个错误:


'str' 对象不可调用。


我想要的输出是initial_datetime加上我的时间(在本例中为 -7 小时),然后加上 4 小时。因此,在我的示例中,新日期应为“2015-11-03 05:05:22”。


侃侃无极
浏览 175回答 1
1回答

狐的传说

datetime.combine通常用于将date对象与time对象组合,而不是递增或递减datetime对象。在您的情况下,您需要将日期时间字符串转换为datetime对象并将时间字符串的部分转换为整数,以便您可以将它们添加到您的日期时间timedelta。time顺便说一句,请注意使用与您的导入冲突的变量名称,例如。from datetime import datetime, timedeltadtstr = '2015-11-03 08:05:22'tstr = '-7:00'hours, minutes = [int(t) for t in tstr.split(':')]dt = datetime.strptime(dtstr, '%Y-%m-%d %H:%M:%S') + timedelta(hours=hours+4, minutes=minutes)print(dt)# 2015-11-03 05:05:22
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python