网站开发维护人员,国内免费建站网站,怎么做网站关键词视频,建站做网站如何让python在东方显示时间#xff1f;我已经看过了Python文档#xff0c;但它非常混乱。我使用的是python 3。谢谢。这可能有帮助#xff1a;stackoverflow.com/questions/117514/hellip#xff1b;基本上#xff0c;在内部使用UTC#xff0c;并在显示时使用pytz转…如何让python在东方显示时间我已经看过了Python文档但它非常混乱。我使用的是python 3。谢谢。这可能有帮助stackoverflow.com/questions/117514/hellip基本上在内部使用UTC并在显示时使用pytz转换为特定时区。当然还有一种更直观的方法from datetime import datetimefrom pytz import timezonetz timezone(EST)datetime.now(tz)## this returns a datetime object pointing to right now## according to the timezone info object handed in as the tz variable.或者您可以定义自己的datetime对象并将tz作为tzinfo传递如下所示datetime(2016, 3, 30, 11, 13, 24, tzinfotz)这正是我要找的。不过我查了上面的(发表评论的日期我在东海岸)。它显示了以下内容(我猜这是一个日光节约问题)打印日期时间。现在(TZ)----out[23]日期时间。日期时间(2016422121920281778TZINFO)打印日期时间。现在()-----out[24]日期时间。日期时间(2016422131958839327)使用US/Eastern而不是EST似乎可以解决这一问题。虽然您的本地系统可能有一组不同的时区但不确定什么会导致38分钟的偏移。有关列表请访问stackoverflow.com/questions/13866926/hellip如果您需要很多时区并且需要正确处理夏令时的重复小时数(即从午夜到凌晨1点发生的情况)则应使用包pytz。但对于一些简单的事情创建自己的时区类就足够简单了import datetimeclass 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 Marchself.dston d datetime.timedelta(days6-d.weekday())d datetime.datetime(dt.year, 11, 1) #1st Sunday in Novself.dstoff d datetime.timedelta(days6-d.weekday())if self.dston dt.replace(tzinfoNone) self.dstoff:return datetime.timedelta(hours1)else:return datetime.timedelta(0)def tzname(self, dt):return EST5EDTdt datetime.datetime.now(tzEST5EDT())这里您使用抽象基类datetime.tzinfo创建一个EST5EDT类它描述了东部时区的含义即您的UTC偏移量(-5小时)以及夏令时生效的时间(3月2日星期日和11月1日星期日)。btw上面的模板是从datetime文档中提取的http://docs.python.org/library/datetime.html网站不知道让python在东方显示时间是什么意思但使用上面最后一行中的dt对象In [15]: print(dt)2012-07-29 12:28:59.125975-04:00In [16]: print(dt.strftime(%Y-%m-%d %H:%M:%S))2012-07-29 12:28:59In [17]: print(dt.strftime(%H:%M:%S))12:28:59In [18]: print(dt.strftime(%s.%f))1343579339.125975Pytz图书馆应该是有用的。使用下面代码的pytz(支持2.3)可以根据东部时区获得时间。from datetime import datetime, timedeltafrom pytz import timezoneimport pytzeastern timezone(US/Eastern)fmt %Y-%m-%d %H:%M:%S %Z%zloc_dt eastern.localize(datetime(2012, 10, 29, 6, 0, 0))print loc_dt.strftime(fmt)我似乎无法安装pytz它告诉我通过命令行安装但我不知道如何安装。我尝试了自述文件所说的c:python32python.exe setup.py install。但它说无效。可能安装了错误版本的Pytz。你能试着用easy-install--upgrade-pytz命令吗您应该为此安装了安装工具。我认为安装工具不适用于python 3我只能找到python 2.x的版本。[链接]pypi.python.org/pypi/distribute您可以在python 3中使用distribute作为安装工具。如果需要整个时间戳import datetimeprint (datetime.datetime.utcnow() - datetime.timedelta(hours4))如果您只需要YYMMDD格式的日期print (datetime.datetime.utcnow() - datetime.timedelta(hours4)).strftime(%Y%m%d)这错误地假定东部时区总是与UTC相差4小时。