我需要在UTC时间生成一个UNIX时间戳,所以我使用time.time()
来生成它。
我是否需要执行其他操作,或者时间戳是否自动采用 UTC?
time.time()
返回自纪元以来的秒数,因此它不定义正在使用哪个时间标准或区域。
使用以下方法转换为时间标准:
time.localtime([秒])
-由操作系统定义的本地时间time.gmtime([秒])
-UTC它们都返回time.struct_time
。
>>> t = time.time()
>>> time.localtime(t)
time.struct_time(tm_year=2013, tm_mon=5, tm_mday=15, tm_hour=2, tm_min=41, tm_sec=49, tm_wday=2, tm_yday=135, tm_isdst=1)
>>> time.gmtime(t)
time.struct_time(tm_year=2013, tm_mon=5, tm_mday=15, tm_hour=0, tm_min=41, tm_sec=49, tm_wday=2, tm_yday=135, tm_isdst=0)
从技术上讲,time.time()
没有指定,实际上,至少在 CPython 中,它以底层标准 C 库的时间函数使用
的任何格式返回时间戳。
C标准(不是免费提供的)没有说明这是否是GMT,POSIX标准也没有。它只是说:
time()
函数应返回自纪元以来的时间值(以秒为单位)。
…没有说明时区,除了您可以将其传递给localtime
或gmtime
以获取本地或GMT时区中的“故障时间”。
所以,这是特定于平台的。平台可以为time
返回它想要的任何东西,只要它这样做的方式使localtime
和gmtime
正常工作。
也就是说,除了闰秒(大多数其他平台)之外,通常是GMT,或者UTC(Windows)或UTC。例如,FreeBSD表示:
< code>time()函数返回协调世界时1970年1月1日0小时0分0秒后的时间值,不包括闰秒。
OS X和大多数其他BSD具有相同的手册页,Windows和linux / glibc也专门返回UTC(带或不带闰秒)等。
此外,Python留档说:
要找出纪元是什么,请查看 gmtime(0)。
将其与时间和
gmtime
的定义放在一起,平台返回本地时间戳比GMT要多得多。(话虽如此,这种说法不可能那么权威,因为对于任何POSIX平台来说,这实际上都不是完全正确的,这要归功于闰秒。
我知道有人问过这个问题,但没有提供解决方案。Python UTC日期时间对象的ISO格式不包括Z(Zulu或零偏移) 我正在寻找一种在Python中用这种格式生成UTC时间戳的干净方法。我需要的格式是。 具体来说,我需要在最后加上“Z”。Python的不会在末尾附加Z。 请注意,手动添加“Z”不是我可以接受的解决方案。我正在寻找一个干净的方法来做到这一点。 以ISO格式生成带后缀的UTC时间戳的干
问题内容: 我只想检查是否返回UTC / GMT时间戳,还是需要使用? 问题答案: 返回UNIX时间戳,该时间戳与时区无关。由于UNIX时间戳表示自1970年 UTC 以来的秒数,您可以说它是UTC,但实际上没有时区。 实际上,UNIX时间戳在任何给定时间在全世界范围内都是相同的值。在撰写本文时,它在东京,伦敦和纽约。要将其转换为“人类可读”的时间,您需要指定要显示的时区。在东京是,在伦敦是在纽约
Python时间模块中的是否返回系统的时间或UTC时间?
我正在尝试使用Joda在一个简单的Java程序中获取UTC时间戳: 程序输出如下: 毫秒值是正确的UTC时间(即用时区确认)第二个值是时区。 我需要的是UTC值不变为(即独立于TZ),用于数据库写入。这可能吗? 我知道是本地日期(GMT-4),是UTC(GMT-0)。日期的输出值如下: 我尝试了所有组合,试图将的UTC值作为java.sql.TimeStamp: 用于测试的打印输出: 第一行是正确
格式化时间 timeFormat | date(timestamp, format = "yyyy-mm-dd") 注意:1.7.9之前的版本只能传入秒或毫秒时间戳,date和timeFormat为同功能不同名函数,无论用哪个方法名,都是一样的。 该函数必须传入第一个参数,第二个参数是可选的,函数返回一个格式化好的时间。 time <String> 任何合法的时间格式、秒或毫秒的时间戳 forma
问题内容: 我想以毫秒为单位获取当前UTC时间。我搜索了google,并得到了一些System.currentTimeMillis()确实返回UTC时间的答案。但事实并非如此。如果我执行以下操作: 这三个时间几乎都相同(由于通话,相差以毫秒为单位)。 这不是UTC时间,而是我的时区时间。如何在Android中获取当前UTC时间? 问题答案: 您显示的所有三行都将给出自unix纪元以来的毫秒数,这是