python 時間模組小結

來源:互聯網
上載者:User

標籤:from   說明   time模組   延時   圖片   gpo   strong   round   alt   

python有兩個重要的時間模組,分別是time和datetime

time模組表示時間的幾種方法 時間元組
time.struct_time(        tm_year=2016, tm_mon=7, tm_mday=21,        tm_hour=22, tm_min=32, tm_sec=51,        tm_wday=3, tm_yday=203, tm_isdst=0        ) 

# 此元組有9個元素(年,月,日,時,分,秒,周幾,年中第幾天,是否夏令時)

時間戮

距離1970-01-01 00:00:00此時間的總秒數

格式化顯示

(‘%Y-%m-%d %X‘)等等

英文顯示  

 ‘Mon Jan 26 00:52:24 1970‘

 

time模組的方法

time模組關係圖

 

 

  • 舉幾個例子

先設一個時間元組, 9個參數,最後3位可為0

t = (2016,7,21,22,47,45,0,0,0)

#給定時間求時間戮:In [21]: time.mktime(t)Out[21]: 1469112465.0#求目前時間戮In [23]: time.time()Out[23]: 1469112643.2187786
#按指定格式顯示時間
In [25]: time.strftime(‘%x %X‘,t)Out[25]: ‘07/21/16 22:47:45‘
#給定一個時間字串,按給定格式拆分成數組 
In [26]: str=‘2016-04-23 12:34:54‘
In [27]: time.strptime(str,‘%Y-%m-%d %X‘)Out[27]: time.struct_time(tm_year=2016, tm_mon=4, tm_mday=23, tm_hour=12, tm_min=34, tm_sec=54, tm_wday=5, tm_yday=114, tm_isdst=-1)
In [28]: #英文顯示In [29]: time.asctime(t)Out[29]: ‘Mon Jul 21 22:47:45 2016‘

time.sleep(秒) 延時給定秒數

 

datetime模組

此模組下有幾個子模組:

  • date: 處理年月日,
  • time: 處理分秒時,微秒
  • datetime: 處理年月日,時分秒,微秒,以此為主講一講
datetime子模組的方法

datetime子模組也有個時間元組,是7個元素,可省略,省略的話預設為0

datetime子模組說明圖

(圖中有個小錯誤,時間元組是7個元素)

 

  • 舉幾個例子

 

In [32]: from datetime import datetimeIn [33]: #擷取目前時間In [34]: datetime.now()Out[34]: datetime.datetime(2016, 7, 21, 23, 12, 51, 572284)In [35]: datetime.today()Out[35]: datetime.datetime(2016, 7, 21, 23, 13, 1, 458328)In [36]: #擷取零時區時間In [37]: datetime.utcnow()Out[37]: datetime.datetime(2016, 7, 21, 15, 13, 40, 754435)
In [38]: #擷取目前時間戮In [39]: a=datetime.now()In [40]: a.timestamp()Out[40]: 1469114156.388418
In [42]: #設定一個時間對象In [43]: d=datetime(2016,7,21,22,23,15)In [44]: #自訂格式顯示In [45]: d.strftime(‘%x %X‘)Out[45]: ‘07/21/16 22:23:15‘In [46]: #顯示英文格式In [47]: d.ctime()Out[47]: ‘Thu Jul 21 22:23:15 2016‘In [48]: #顯示日曆(年,年中第幾周,周幾)In [49]: d.isocalendar()Out[49]: (2016, 29, 4)
  • datetime子模組單位時間間隔:datetime.resolution=1微秒。

    -- date子模組的時間間隔為1天  date.resolution=1天

    -- 時間間隔乘以一個數,表示間隔幾天

In [50]: from datetime import dateIn [51]: #現在時間是In [52]: date.today()Out[52]: datetime.date(2016, 7, 21)In [53]: #100天以前的日期是In [54]: date.today()-date.resolution*100Out[54]: datetime.date(2016, 4, 12)

 

6個元素的時間元組可以轉換成9個元素的時間元組,供time模組使用

In [56]: dOut[56]: datetime.datetime(2016, 7, 21, 22, 23, 15)In [57]: d.timetuple()Out[57]: time.struct_time(tm_year=2016, tm_mon=7, tm_mday=21, tm_hour=22, tm_min=23, tm_sec=15, tm_wday=3, tm_yday=203, tm_isdst=-1)
時間格式化
%y 兩位元的年份表示(00-99)%Y 四位元的年份表示(000-9999)%m 月份(01-12)%d 月內中的一天(0-31)%H 24小時制小時數(0-23)%I 12小時制小時數(01-12) %M 分鐘數(00=59)%S 秒(00-59)%a 本地簡化星期名稱%A 本地完整星期名稱%b 本地簡化的月份名稱%B 本地完整的月份名稱%c 本地相應的日期表示和時間表示%j 年內的一天(001-366)%p 本地A.M.或P.M.的等價符%U 一年中的星期數(00-53)星期天為星期的開始%w 星期(0-6),星期天為星期的開始%W 一年中的星期數(00-53)星期一為星期的開始%x 本地相應的日期表示%X 本地相應的時間表示%Z 當前時區的名稱%% %號本身

 

python 時間模組小結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.