【发布时间】:2018-02-06 14:22:48
【问题描述】:
所以我有这个字符串:'2018-02-06T12:12:29.98+01:00' 这是一个日期。最终,我想将其转换回包含此日期的字符串:'2018-02-06 13:12:29'。所以基本上我只想删除+01:00。为此,我想我首先需要将字符串转换为这样的日期对象:
import pytz
import dateutil.parser
tempdate = '2018-02-06T12:12:29.98+01:00'
test = dateutil.parser.parse(tempdate)
print(test) # --> 2018-02-06 12:12:29.980000+01:00
当我稍后尝试将其转换为所需的格式并像这样删除 +01:00 时,我得到了一小时而不是向前一小时:
date = test.astimezone(pytz.utc)
print(date) # --> 2018-02-06 11:12:29.980000+00:00
有谁知道我该如何解决这个问题?我正在使用 python 2.7
【问题讨论】:
-
如果
test是+1hr,date不应该是-1hr,即我们应该看到 11:12:29 吗? -
'2018-02-06T12:12:29.98+01:00' 这意味着当地时间 12:12,恰好是 UTC+1(中欧)。
test.astimezone(pytz.utc)然后将此时间转换为 UTC,即 11:12。那么你确定要在你的临时日期上增加一个小时来得到 13:12 吗? -
您想保持相同的时间只需更改 tz?
标签: python python-2.7 date datetime