Python學習筆記 - time, datetime

MADAO是不會開花的發表於2019-01-17
  • time模組

    time模組提供了各種與時間相關的功能。該模組有很多方法,這裡整理一下常用的幾個:

    • time.time

      返回1970年1月1日00:00:00到現在的秒數。

      import time
      
      print(time.time()) # 1547704127.963818
      複製程式碼
    • time.localtime

      浮點數的時間戳轉換為時間元組

      import time
      
      print(time.localtime())
      
      '''
      time.struct_time(tm_year=2019, tm_mon=1, tm_mday=17, tm_hour=13, tm_min=51, tm_sec=38, tm_wday=3, tm_yday=17, tm_isdst=0)
      '''
      複製程式碼

      時間元組的值的含義:

      下標 屬性
      0 tm_year(年) 比如2019
      1 tm_mon(月) 1 - 12
      2 tm_mday(日) 1 - 31
      3 tm_hour(時) 0 - 23
      4 tm_min(分) 0 - 59
      5 tm_sec(秒) 0 - 61
      6 tm_wday(weekday) 0 - 6(0表示週日)
      7 tm_yday(一年中的第幾天) 1 - 366
      8 tm_isdst(是否是夏令時) 預設為-1
    • time.strftime

      格式化時間

      import time
      
      print(time.strftime('%Y-%m-%d'))
      複製程式碼
      符號 含義
      %a 本地(locale)簡化星期名稱
      %A 本地完整星期名稱
      %b 本地簡化月份名稱
      %B 本地完整月份名稱
      %c 本地相應的日期和時間表示
      %d 一個月中的第幾天(01 - 31)
      %H 一天中的第幾個小時(24小時制,00 - 23)
      %I 第幾個小時(12小時制,01 - 12)
      %j 一年中的第幾天(001 - 366)
      %m 月份(01 - 12)
      %M 分鐘數(00 - 59)
      %p 本地am或者pm的相應符
      %S 秒(01 - 61)
      %U 一年中的星期數。(00 - 53星期天為星期的開始)
      %w 一個星期中的第幾天(0 - 6,0是星期天)
      %W 一年中的星期數。(00 - 53星期一為星期的開始)
      %x 本地相應日期
      %X 本地相應時間
      %y 去掉世紀的年份(00 - 99)
      %Y 完整的年份
      %Z 時區的名字(如果不存在為空字元)
      %% ‘%’字元
    • time.sleep

      暫停執行呼叫執行緒達到給定的秒數。引數可以是浮點數。(直白一點說就是讓程式等待指定的秒數,再繼續執行)

  • datetime

    datetime模組提供了日期操作相關的方法。

    • datetime.datetime.now

      返回當前的本地日期和時間。

      import datetime
      
      print(datetime.datetime.now()) # 2019-01-17 14:13:28.696311
      複製程式碼
    • datetime.timedelta

      設定時間的偏移量,比如想要獲取2012年12月1日的20天之後的日期就可以這樣寫:

      import datetime
      
      start_date = datetime.datetime(2012,12,1)
      offset_date = datetime.timedelta(days=20)
      print(start_date + offset_date) # 2012-12-21 00:00:00
      複製程式碼

      datetime.timedelta接受的引數用:

      引數名 含義 預設值
      days 天數 0
      seconds 秒數 0
      microseconds 微秒數 0
      milliseconds 毫秒數 0
      minutes 分鐘數 0
      hours 小時數 0
      weeks 週數 0

相關文章