您好,登錄后才能下訂單哦!
之前有個程序,里面有個時間部分是按照國內時區,也就是東八區,來寫的,程序中定義了北京時間2點到八點進行檢查;后面程序在國外機器上,例如說韓國,歐美等,執行的時候發現會有時間上的問題,因為獲取的是機器的本地時間
因為機器上不好裝包,只能通過常用的模塊進行改寫了
原先的代碼如下:
#self.invalidStartTime = datetime.time(2,00) #self.invalidEndTime = datetime.time(8,59)
為了計算時區的差值并對以上兩行代碼的時間進行轉換,改為以下:
import time,datetime delta = (time.timezone - (-28800))/3600 #28800為北京時間相對utc 0時區來計算的秒數,即 8*3600 if 2-delta < 0: #小于0,就是前一天的時間了,注意是24小時算 self.invalidStartTime = datetime.time(26-(delta),00) else: self.invalidStartTime = datetime.time(2-delta,00) if 8-delta < 0: self.invalidEndTime = datetime.time(32-(delta),59) else: self.invalidEndTime = datetime.time(8-(delta),59)
這樣子就可以把程序其他時區的機器了!
以上這篇在python 不同時區之間的差值與轉換方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。