python如何显示时间_如何让python显示当前时间(东部)

如果您需要大量时区,则应使用pytz包,并且需要正确处理夏令时的重复小时(即从午夜到凌晨1点发生的情况)。

对于简单的事情,创建自己的时区类很容易:

import datetime

class EST5EDT(datetime.tzinfo):

def utcoffset(self, dt):

return datetime.timedelta(hours=-5) + self.dst(dt)

def dst(self, dt):

d = datetime.datetime(dt.year, 3, 8) #2nd Sunday in March

self.dston = d + datetime.timedelta(days=6-d.weekday())

d = datetime.datetime(dt.year, 11, 1) #1st Sunday in Nov

self.dstoff = d + datetime.timedelta(days=6-d.weekday())

if self.dston <= dt.replace(tzinfo=None) < self.dstoff:

return datetime.timedelta(hours=1)

else:

return datetime.timedelta(0)

def tzname(self, dt):

return 'EST5EDT'

dt = datetime.datetime.now(tz=EST5EDT())在这里,您使用抽象基类datetime.tzinfo来创建一个EST5EDT类,它描述了“东部时区”的含义,即您的UTC偏移(-5小时)和夏令时生效时间(在第二个星期日)三月和十一月的第一个星期日)。

顺便说一下,上面的模板是从datetime文档中提取的:

http://docs.python.org/library/datetime.html

不确定你的意思是“让Python在东部显示时间”,但是使用上面最后一行的dt对象:

In [15]: print(dt)

2012-07-29 12:28:59.125975-04:00

In [16]: print(dt.strftime('%Y-%m-%d %H:%M:%S'))

2012-07-29 12:28:59

In [17]: print(dt.strftime('%H:%M:%S'))

12:28:59

In [18]: print(dt.strftime('%s.%f'))

1343579339.125975

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值