【问题标题】:Change Timezone for Date object Python更改日期对象 Python 的时区
【发布时间】:2015-01-29 00:43:01
【问题描述】:

你好,我正在使用Pythonanywhere,当我打电话时

from datetime import *

print date.today().day

今天打印的日期与我居住的地方(德克萨斯州奥斯汀)不同。我认为这是因为存在时区差异。我将如何告诉我居住的日期对象,以便它获得正确的时区。提前致谢

【问题讨论】:

    标签: python python-2.7 pythonanywhere


    【解决方案1】:

    最可靠的方法是使用pytz。您可以简单地使用pip install pytz 安装它。

    要使用pytz 获取本地日期,您可以简单地执行此操作(注意date.today 方法不会占用时区):

    >>> from datetime import datetime
    >>> import pytz
    >>> local_date = datetime.now(pytz.timezone('US/Central'))  # use datetime here
    >>> local_date.date()                                       # now call date method
    datetime.date(2014, 11, 30)
    

    将其与当前的格林威治日期进行比较:

    >>> greenwich_date = datetime.now(pytz.timezone('Etc/Greenwich'))
    >>> greenwich_date.date()
    datetime.date(2014, 12, 1)
    

    【讨论】:

      【解决方案2】:

      在标准库中,没有创建自己的时区类的跨平台方法来创建感知时区。 pytz 库有一个包含大多数时区的最新数据库。因此,您可以这样做:

      import pytz
      from datetime import datetime
      datetime.now(pytz.utc)
      

      .utc 默认为您提供本地化时区,但您可能希望使用.timezone() 方法显式提供另一个时区。

      【讨论】:

        猜你喜欢
        • 2019-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-16
        • 2020-04-02
        • 1970-01-01
        相关资源
        最近更新 更多