当前位置: 首页 > 面试题库 >

将UNIX时间戳更改为其他时区

邬承悦
2023-03-14
问题内容

我从Python程序中的Web服务检索Unix时间戳。该时间戳是美国时区。为了将它与其他在法国本地化的对象一起插入MySQL数据库中,我想将此时间戳转换为法国时区。

我可以用数学函数来做到这一点,但是存在夏令时的问题。我更喜欢使用Python时间和日期特定的函数来处理这些概念。

您有提示吗,我迷失了Python文档?


问题答案:

过去,当我们从服务提供商处下载文件的时间戳具有与PST时区相对应的时间戳时,我遇到了类似的问题。以下内容帮助我完成了转换:

import pytz, datetime, time
import os

originalTimeStamp = os.stat("/tmp/file-from-us-west-coast").st_mtime

# prints e.g. 2010-03-31 13:01:18
print "original:",datetime.datetime.fromtimestamp(originalTimeStamp)

# re-interpret 
originalTimeZone = "America/Los_Angeles"
targetTimeZone   = "Europe/Paris"

newTimeStamp = pytz.timezone(originalTimeZone).localize(datetime.datetime.fromtimestamp(originalTimeStamp)).astimezone(pytz.timezone(targetTimeZone))

# prints e.g. 2010-03-31 22:01:18+02:00
print "new:     ",newTimeStamp

# convert back to seconds since epoch
newTimeStamp = time.mktime(newTimeStamp.timetuple())

# print time difference in hours
print (newTimeStamp - originalTimeStamp) / 3600.0


 类似资料:
  • 问题内容: 我正在使用MongoDB来存储我的数据。Mongo默认将时间戳存储在UTC中。我们在不同时区处理数据。我正在努力将UTC时间戳转换为PDT或IST时间戳。 试图构造一种方法来传递时区(将我的时间戳转换为时区)和timestamp(UTC)。返回指定时区的时间戳的方法。 问题答案: 您可以使用带有所需时区的dateformat并将其应用于日期

  • 我知道这是一个非常常见的问题,但我觉得我找到的答案并没有真正解决问题。我将概述我的具体用例,并对来自其他SO答案和网络的信息进行总结。 对于我正在编写的服务,数据库条目被创建并存储在移动设备和我们的网站上,需要以两种方式同步。我们目前的目标是Android和iOS,它们都使用sqlite作为关系数据库。服务器端是使用Django和MySQL在Python中实现的,但将来可能会有其他解决方案取代它。

  • 问题内容: 我将时间作为Unix时间戳存储在MySQL数据库中,并将其发送到一些JavaScript代码。我怎么会得到时间呢? 例如,以HH / MM / SS格式。 问题答案: let unix_timestamp = 1549312452 有关Date对象的更多信息,请参考MDN或ECMAScript5规范。

  • 问题内容: 我正在寻找将UTC时间字符串转换为Unix时间戳的选项。 我拥有的字符串变量是,需要将其转换为unix时间戳,例如 任何想法如何做到这一点? 问题答案: 首先,unix时间戳没有时间,但以UTC为单位。 在包有功能解析与预计解析时的布局。布局是从参考时间开始构造的。因此,在您的情况下,布局应为。使用Parse之后,您将获得一个可以调用Unix来接收Unix时间戳的结构。

  • 如果本地时间位于UTC时区,那么如何将转换为Unix时间戳? >。

  • 问题内容: 我正在尝试解析Unix时间戳,但超出范围错误。这对我来说真的没有意义,因为布局正确(如Go文档中所示): play 问题答案: 该函数不执行Unix时间戳。相反,您可以使用来解析字符串,并使用创建时间戳: 输出: play: http : //play.golang.org/p/v_j6UIro7a 编辑: 从更改为,以避免32位系统上的int溢出。