猿问

读入字符串作为日期时间对象,以 3 位数字表示毫秒

我正在读取日期时间格式的字符串。但是,毫秒不是 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)


UYOU
浏览 263回答 1
1回答

九州编程

你应该使用这种格式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'
随时随地看视频慕课网APP

相关分类

Python
我要回答