将timedelta对象转换为datetime的Python格式
下面是datetime对象将timedelta对象转换为datetime的Python格式,python,Python,下面是datetime对象 datetime_obj = datetime.strptime("2020-11-15T00:00:00.000Z", '%Y-%m-%dT%H:%M:%S.%fZ') 当我执行以下代码时 str(datetime_obj + timedelta(days=1)) 它也改变了格式。我的意思是它返回这个: 2020-11-16 00:00:00 但预期产出应如下所示。我怎样才能解决它 2020-11-16T00:00:00.000Z 感
datetime_obj = datetime.strptime("2020-11-15T00:00:00.000Z", '%Y-%m-%dT%H:%M:%S.%fZ')
当我执行以下代码时
str(datetime_obj + timedelta(days=1))
它也改变了格式。我的意思是它返回这个:
2020-11-16 00:00:00
但预期产出应如下所示。我怎样才能解决它
2020-11-16T00:00:00.000Z
感谢您回答请不要使用str(…)
,而是使用原始格式字符串(反序列化的序列化对应项):
new_datetime = datetime_obj + timedelta(days=1)
print(new_datetime.strftime('%Y-%m-%dT%H:%M:%S.%fZ'))
# 2020-11-16T00:00:00.000000Z
不要使用str(…)
,而是对原始格式字符串使用(反序列化的序列化对应项):
new_datetime = datetime_obj + timedelta(days=1)
print(new_datetime.strftime('%Y-%m-%dT%H:%M:%S.%fZ'))
# 2020-11-16T00:00:00.000000Z
您可以使用前面答案中建议的
strftime
,也可以使用下面的方法
>>> new_datetime = datetime_obj + timedelta(days=1)
>>> f"{new_datetime:%Y-%m-%dT%H:%M:%S.%fZ}" # By using f-strings(3.6+)
'2020-11-16T00:00:00.000000Z'
>>> "{:%Y-%m-%dT%H:%M:%S.%fZ}".format(new_datetime) # Or by using string.format method
'2020-11-16T00:00:00.000000Z'
您可以使用前面答案中建议的
strftime
,也可以使用下面的方法
>>> new_datetime = datetime_obj + timedelta(days=1)
>>> f"{new_datetime:%Y-%m-%dT%H:%M:%S.%fZ}" # By using f-strings(3.6+)
'2020-11-16T00:00:00.000000Z'
>>> "{:%Y-%m-%dT%H:%M:%S.%fZ}".format(new_datetime) # Or by using string.format method
'2020-11-16T00:00:00.000000Z'
使用strftime()
或
(datetime\u obj+timedelta(days=1)).isoformat()+'Z'
使用strftime()
或
(datetime\u obj+timedelta(days=1)).isoformat()+'Z'
'2020-11-16T00:00:00Z'