使用Python将时间从UTC转换为GMT

jun*_*ihh 1 python datetime utc gmt

我正在写一个python应用程序,它将YML文件转换为我的博客的静态HTML页面(静态站点生成器).我想添加RSS提要.在某个地方,我读到发布日期必须是:

<pubDate>Wed, 05 Jul 2017 18:38:23 GMT</pubDate>
Run Code Online (Sandbox Code Playgroud)

但是我有:

<pubDate>2017-07-05T18:38:23+00:00</pubDate>
Run Code Online (Sandbox Code Playgroud)

datetime来自Python 的API对于这些来说非常麻烦.如何将字符串转换2017-07-05T18:38:23+00:00为GMT?

谢谢你的到来.

WNG*_*WNG 6

import datetime
basedate="2017-07-05T18:38:23+00:00"
formatfrom="%Y-%m-%dT%H:%M:%S+00:00"
formatto="%a %d %b %Y, %H:%M:%S GMT"
print datetime.datetime.strptime(basedate,formatfrom).strftime(formatto)
Run Code Online (Sandbox Code Playgroud)

将返回正确的转录:2017年7月5日星期三,格林威治标准时间18:38:23

我的格式来源:http://strftime.org/


Sal*_*n P 5

虽然其他答案是正确的,但我总是使用箭头来处理 python 中的日期时间,它非常容易使用。

对于你的例子,你可以简单地做

import arrow
utc = arrow.utcnow()
local = utc.to('US/Pacific')
local.format('YYYY-MM-DD HH:mm:ss ZZ')
Run Code Online (Sandbox Code Playgroud)

该文档包含更多信息。