Python時區設定方法與pytz查詢時區教程

來源:互聯網
上載者:User
時區的概念與轉換

首先要知道時區之間的轉換關係,其實這很簡單:把當地時間減去當地時區,剩下的就是格林威治時間了。 例如北京時間的18:00就是18:00+08:00,相減以後就是10:00+00:00,因此就是格林威治時間的10:00。
而把格林威治時間加上當地時區,就能得到當地時間了。 例如格林威治時間的10:00是10:00+00:00,轉換成太平洋標準時間就是加上-8小時,因此是02:00-08:00。
而太平洋標準時間轉換成北京時間轉換也一樣,時區相減即可。 例如太平洋標準時間的02:00-08:00,與北京時間相差-16小時,因此結果是18:00+08:00。

Python時區的處理
發現python沒有簡單的處理時區的方法,不明白為什麼Python不提供一個時區模組來處理時區問題。 好在我們有個第三方pytz模組,能夠幫我們解決一下時區問題。

pytz簡單教程

pytz查詢某個的時區
可以根據國家代碼尋找這個國家的所有時區。

複製代碼 代碼如下:


>>> import pytz
>>> pytz.country_timezones('cn')
['Asia/Shanghai', 'Asia/Harbin', 'Asia/Chongqing', 'Asia/Urumqi', 'Asia/Kashgar']

pytz建立時區對象
根據上面得到的時區資訊,就可以建立指定的時區對象。比如建立上海時區對象:

複製代碼 代碼如下:


tz = pytz.timezone('Asia/Shanghai')

得到某個時區的時間
然後在建立時間對象時進行指定上面時區,就可以得到指定時區的日期時間:

複製代碼 代碼如下:


>>> import datetime
>>> datetime.datetime.now(tz)
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.