Rfc 1123在python中

时间:2010-09-07 18:36:29

标签: python time dst

只想使用'datetime'或'time'模块。我基于this问题基于以下代码:

import time

def rfc1123 (gmt):
    weekday = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"][gmt.tm_wday]

    month = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"][gmt.tm_mon]

    return "%s, %02d %s %04d %02d:%02d:%02d GMT" % (weekday, gmt.tm_mday, month, gmt.tm_year, gmt.tm_hour, gmt.tm_min, gmt.tm_sec)

print (rfc1123 (time.gmtime ()))

有什么不对吗?我真的很担心夏令时。

感谢。

2 个答案:

答案 0 :(得分:2)

更简单的方法:

from time import strftime, gmtime
strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())

请参阅python python documentation

中的示例

答案 1 :(得分:0)

如果您在使用datetimetime方面有一定的灵活性,更简单的方法是使用email.utils.formatdate()。有关详细信息,请参阅this Stack Overflow answer