[英]Assign a date to a time in Python
在纽约市的服务器上运行的Python脚本从websocket API接收实时数据流,其中仅给出时间,例如: 8:21:56
: 8:21:56
: 8:21:56
。 所提供的时间在Asia/Chongqing
时区,即UTC +08:00
。 本地服务器的时区为America/New_York
,时区为UTC -05:00
。
这意味着,根据夏时制,两个时区中的日期每天会有所不同,为12-13小时。
问题:知道我的服务器所在的时区不同 ,如何找到将时间转换为适当的日期时间所需的日期? 例如:如果服务器上的本地日期是2015-12-05
,转换8:21:56
至2015-12-06 7:36:56.000Z
在UTC时区。
像许多其他时区一样, America/New_York
在不同的日期可能具有不同的 utc偏移量。
为了得到一个时区( 日 Asia/Chongqing
),对应于一个特定的时间 ( '8:21:56'
在该时区() Asia/Chongqing
)假设你知道在另一个时区的日期 ( America/New_York
) ,您应该创建类似于pytz的.localize()
方法的算法,其中困难的部分是并非总是可能将本地时间转换为UTC-其余部分很简单(如果您知道UTC日期/时间和区域ID,例如Asia/Chongqing
,可以很容易地( utc_dt.astimezone(tz).date()
)在Asia/Chongqing
获取日期。
如果您只需要在给定日期范围内支持固定数量的时区,则可以简化算法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.