pandas Timestamp中+01:00含义及timestamp()结果偏差的疑问
问题解答
1. 末尾的+01:00是什么?
这是时区偏移量,代表该时间比协调世界时(UTC)早1小时。它和夏令时可能有关,但也可能是地区的标准时区(比如欧洲中部时间CET的标准偏移就是+01:00,夏令时CEST则是+02:00)。你看到的2006-04-03 08:00:00+01:00,对应的UTC时间是2006-04-03 07:00:00。
2. timestamp()结果差3600秒的原因
Timestamp.timestamp()方法返回的是UTC时间戳,也就是从1970-01-01 00:00:00 UTC到目标时间点的总秒数。
你可以验证这个结果:
from datetime import datetime print(datetime.utcfromtimestamp(1144047600.0))
执行后会输出2006-04-03 07:00:00,正好是你那个带+01:00偏移的时间对应的UTC时间。
如果你的预期是基于本地时区或直接用不带偏移的时间计算,就会出现1小时的差值——比如你可能误以为2006-04-03 08:00:00是UTC时间,但实际上它是+01:00时区的时间,转换为UTC需要减去1小时,所以时间戳比你预期的少了3600秒。
内容的提问来源于stack exchange,提问作者24n8
相关产品推荐
相关产品推荐

