Python: 日期时间格式化
我需要生成一个本地时间戳,格式是YYYYMMDDHHmmSSOHH'mm'。这里的OHH'mm'可以是加号(+)、减号(-)或者Z,后面跟着小时和分钟,再加上一个撇号(')。
请问,我该怎么得到这样的时间戳,既能表示本地时区,又能考虑夏令时的情况呢?
2 个回答
8
time.strftime 可以用来处理这个问题。
在Linux系统中,如果环境变量设置正确,%z
会以 -HHMM 的格式显示时间。
>>> os.environ['TZ'] = 'EST'
>>> time.strftime('%x %X %z')
'03/21/10 08:16:33 -0500'
32
import time
localtime = time.localtime()
timeString = time.strftime("%Y%m%d%H%M%S", localtime)
# is DST in effect?
timezone = -(time.altzone if localtime.tm_isdst else time.timezone)
timeString += "Z" if timezone == 0 else "+" if timezone > 0 else "-"
timeString += time.strftime("%H'%M'", time.gmtime(abs(timezone)))
当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。