Python中的Rfc 1123

3 投票
2 回答
2650 浏览
提问于 2025-04-16 03:49

我只是想使用 'datetime' 或 'time' 模块。我根据这个问题的内容写了下面的代码:这个

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 个回答

1

如果你在使用 datetimetime 时有一点灵活性,更简单的方法是使用 email.utils.formatdate()。想了解更多信息,可以看看 这个Stack Overflow的回答

2

更简单的方法是:

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

可以看看这个在Python中的例子,详细信息可以参考Python文档

撰写回答