给定本地时间戳和UTC时间戳,是否可以确定时区以及DST是否有效?在Python中确定时区
2
A
回答
2
如果你的“UTC时间戳”是一个浮动(INT就足够了)“从时代秒”,而你的“本地时间戳“是一些奇怪的版本,它移入你的本地时间坐标(除了UTC之外没有”纪元“),标准Python库中的模块time就足够了。由于这些文档显示,给定“从时代开始的秒”,gmtime
将其转换为UTC中的9项元组,localtime
转换为当地时间的9项元组;以相反方式,calendar.timegm
(UTC 9项元组到UTC时间戳)和mktime
(本地时间9项项元组到UTC时间戳)。你会注意到没有“本地时间戳”(只有当地时间9项元组struct_time
实例)这样的事情,只是因为没有这样的概念存在。但是,如果我正确理解“本地时间戳”的含义,然后将它转换为结构时间“好像”它是一个实时时间戳,然后返回到本地时间,将会给出您寻找的偏移量(很快)。至于DST,有点说明它是否是我们提到的元组的第9项。
例如,仅使用 “本地时间戳”:
>>> loct
1282453595
>>> time.mktime(time.gmtime(loct)) - loct
28800.0
>>> _/3600
8.0
>>>
这是说我UTC以西8小时。和:
>>> time.localtime(loct)[-1]
1
此说,这是与 DST生效。
0
请尝试看看 http://docs.python.org/library/datetime.html#datetime.datetime 对于日期,时间和时区的内置支持。
如果你需要一个更强大的图书馆,在这里建议偷看:Full-featured date and time library
相关问题
- 1. 不正确的时区转换在python
- 2. 确定用户的时区
- 3. 使用本地时区在Python中获取正确的时区偏移量
- 4. 确定T-SQL中的时区偏移
- 5. 确定在Python
- 6. Python中的时区
- 7. 在.Net中确定UTC时间的时区偏移量
- 8. 在Python中获取特定时间和时区的偏移量
- 9. 确定给定时区的UTC时间是否在DST
- 10. Python - 特定时区的日期时间
- 11. python中函数的准确定时
- 12. 如何确定时区中的文化/区域设置
- 13. 在Python中确定重定向的URL
- 14. XQuery - 确定给定时区中给定UTC时间是否属于夏令时
- 15. 确定赛季在Java中与JodaTime定的时间戳和时区
- 16. 在XSLT中正确显示时区
- 17. 时区正确存储在Mongoose中
- 18. 在rails中正确管理时区
- 19. 不正确的时区在Azure中
- 20. 如何在PHP中指定时区输出日期(“Y”)正确
- 21. 根据时区确定电话号码?
- 22. JavaScript如何确定用户的时区?
- 23. foursquare如何确定签入的时区?
- 24. Python中的时区处理
- 25. 在python龟中定义一个区域
- 26. 确定缓冲区何时在没有在OpenAL中轮询源时播放
- 27. 如何在给定的时区运行python(从外部更改时区)?
- 28. 使用时区打印正确时间,Python
- 29. 如何确定在UITableView的小区中的区段 - 目标c
- 30. 时区感知与时区天真python
问题出在这里:我有一个UTC时间戳,它代表任意时间任意日期的00:00:00。我知道那个任意日期是什么,但我不知道时区。如果我将时间戳转换为日期时间对象,我可以使用小时值来确定时区,但问题在于DST。如果DST生效,则时区将偏移一个。不过,我相信这个时区在美国将是一个时区。无论如何,我找到了解决问题的办法(虽然不是一个干净的,它就足够了)。谢谢! – gvl 2010-08-23 03:24:26