我正在读取日期时间格式的字符串。但是,毫秒不是 6 位数字,而是只有 3 位以字母 Z 结尾。我如何读入这个字符串并使其成为日期时间对象,并添加 1 天,然后将其作为上述格式的字符串写出,即毫秒的 3 位数字和末尾的字母 Z。我尝试了以下代码但没有成功:old_date= "2018-06-06T23:59:59.999Z"new_date = datetime.datetime.strptime(old_date, '%Y-%m-%d %H:%M:%S.%f%Z') + datetime.timedelta(days=1)print(new_date)
1 回答

九州编程
TA贡献1785条经验 获得超4个赞
你应该使用这种格式
datetime.datetime.strptime(old_date, '%Y-%m-%dT%H:%M:%S.%fZ')
Out[180]: datetime.datetime(2018, 6, 6, 23, 59, 59, 999000)
更新
dt1=datetime.datetime.strptime(old_date, '%Y-%m-%dT%H:%M:%S.%fZ')+datetime.timedelta(days=1)
dt1.strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]+'Z'
Out[196]: '2018-06-07 23:59:59.999Z'
添加回答
举报
0/150
提交
取消