用datetime模塊處理轉換時區時間問題,而不是time模塊


要點:

1.不要用time模塊在不同時區間轉換

2.如果要在不同時區之間執行可靠的轉換,可以用內置的datetime模塊和開發者社區提供的pytz模塊搭配起來使用

3.開發者總是應該先把時間轉換成UTC格式的時間,然后再進行其他操作,最后再轉換為本地時間

time模塊

time.time()獲取時間戳

time.localtime()獲取當前結構化(struct_time)的時間

time.mktime()將struct_time轉換為時間戳

time.gmtime()將時間戳轉換為struct_time、

 

 time.strptime(string, format),將字符串類型的時間轉換為結構化的時間

time.strftime(format, struct_time),將結構化的時間轉換為標准時間格式

可用strptime,strftime對時間進行格式化:

 

 

datetime模塊:

下述代碼將UTC時間轉換為筆者的電腦本機時間,筆者所處的是北京時間(東八區時間+08:00)

 

 可見UTC時間轉換為本機時間,是在原有時間上加了8個小時,時區往東,每過一個時區加一個小時,時區往西,每過一個時區減一個小時

我們計算不同時區的時間時需要用UTC時間為過度進行轉換,下述代碼是將航班到達紐約的時間轉換為舊金山時間:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM