美文网首页
时间戳、时间和时区

时间戳、时间和时区

作者: 天涯西剑 | 来源:发表于2019-11-05 09:04 被阅读0次

时间戳

时间戳是容易理解的。

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数

我们先可以将其理解为历史上某一时刻距离现在的秒数,显然这件事情是确定的,不考虑相对论的话,对于地球上任何一点,我们都可以获得同样的时间戳

时间和时区

但是对于具体的时间来说,在同一时刻或者说不同时间戳下,地球上不同的人可能会有不同的答案,比如北京时间9月12日上午8点,对于格林威治地区的来说,这是9月12日0点,刚刚才告别9月11日。
原因是为什么呢?因为有一个太阳以及地球的自转,大家都把太阳高度角最大的时刻叫做12点,所以每个地方的12点都是不一样的
所以说:想要得到一个时间格式,我们不仅要知道当前的确切时间,而且要知道我们的位置。

时间格式 = 真实时刻(时间戳)+所处位置(时区)

在Python里,

  • 获得时间戳
    time.time()返回当前时间戳
  • 时间戳转时间格式
    time.localtime(时间戳)会返回对应时间戳的当地时间格式的元组,可以进一步格式化为其他时间格式的字符串。如果不填入时间戳的话,会默认是当前的时间戳。
    time.gmtime(时间戳)会返回对应时间戳的格林威治时间格式的元组,可以进一步格式化为其他时间格式的字符串。如果不填入时间戳的话,会默认是当前的时间戳。
  • 时间格式转时间戳
    注意!!!
    time.mktime(时间元组)默认时间元组为当地的时间元组!!!,如果你拥有一个GMT时间,需要将其转为当地时间再使用mktime!!!
    比如:time.mktime(time.localtime(0))会正常返回0,而time.mktime(time.gmtime(0))则会提示错误!因为以为time.gmtime返回的是1970-1-1 00:00:00,输入mktime的是当地北京时间,而北京时间1970-1-1 00:00:00在Unix时间戳里是不存在的,是负数。

相关文章

  • 时间戳、时间和时区

    时间戳 时间戳是容易理解的。 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年0...

  • 时间戳和时区

    Unix时间戳(Unix timestamp),Unix时间(Unix time)、druid POSIX时间(P...

  • 时间序列

    时区表示 时区转换 时间跨度转换 时期和时间戳之间的转换

  • PostgreSQL时间戳与时区

    时间戳类型 PostgreSQL 提供两种存储时间戳的数据类型: 不带时区的 TIMESTAMP 和带时区的 TI...

  • 时区、时间戳、 时区、格林威治(GMT)、协调世界时(UTC)的

    时区和时间戳 从漫画中举的例子来看,这里的时间戳,指的就是Unix时间戳(Unix timestamp)。它也被称...

  • iOS 时间戳 时区

    时间戳 时间戳(Unix)是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日...

  • NSDate

    创建时间: 时间增减: 时间戳: 日期比较: 设置日期格式: 获取所有时区名称: 设置时区: 将时区配置给date...

  • python时间戳、datetime和时区

    结果是 但是我的认知中,timestamp是与时区无关, 应该是不会改变的所以这个结果为什么两次输入的timest...

  • 时区和时间戳的关系

    时区指地球上的一块区域使用的同一时间定义,以经度划分,每个时区横跨15经度,总共24个时区,东西各12个时区。 时...

  • 日期和时间函数 date 的使用

    pytz:设置时区 time.time():获取当前时间的时间戳 time.localtime():输入时间戳返回...

网友评论

      本文标题:时间戳、时间和时区

      本文链接:https://www.haomeiwen.com/subject/jlagyctx.html