程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> Python中datetime常用時間處理方法

Python中datetime常用時間處理方法

編輯:更多關於編程

             Python提供了多個內置模塊用於操作日期時間,像calendar,time,datetime。今天我們主要來探討下datetime的使用方法,有需要的小伙伴可以參考下。

       

             常用時間轉換及處理函數:

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 import datetime # 獲取當前時間 d1 = datetime.datetime.now() print d1 # 當前時間加上半小時 d2 = d1 + datetime.timedelta(hours=0.5) print d2 # 格式化字符串輸出 d3 = d2.strftime('%Y-%m-%d %H:%M:%S') print d3 # 將字符串轉化為時間類型 d4 = datetime.datetime.strptime(date,'%Y-%m-%d %H:%M:%S.%f') print d4

    獲取本周和本月第一天的日期:

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # -*- coding:utf-8 -*- import datetime def first_day_of_month(): ''' 獲取本月第一天 :return: ''' # now_date = datetime.datetime.now() # return (now_date + datetime.timedelta(days=-now_date.day + 1)).replace(hour=0, minute=0, second=0, # microsecond=0) return datetime.date.today() - datetime.timedelta(days=datetime.datetime.now().day - 1) def first_day_of_week(): ''' 獲取本周第一天 :return: ''' return datetime.date.today() - datetime.timedelta(days=datetime.date.today().weekday()) if __name__ == "__main__": this_week = first_day_of_week() last_week = this_week - datetime.timedelta(days=7) this_month = first_day_of_month() last_month = this_month - datetime.timedelta(days=(this_month - datetime.timedelta(days=1)).day) print this_week print last_week print this_month print last_month ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 #! /usr/bin/python # coding=utf-8   import datetime   """ datetime的功能強大 能支持0001年到9999年 """   """ 當前時間 返回的是一個datetime類型 now方法有個參數tz,設置時區類型。如果沒有和方法today的效果一樣 """ now = datetime.datetime.now() #UTC時間 datetime.datetime.utcnow() attrs = [ ("year","年"),('month',"月"),("day","日"),('hour',"小時"),( 'minute',"分"),( 'second',"秒"),( 'microsecond',"毫秒"),( 'min',"最小"),( 'max',"最大"), ] for k,v in attrs: "now.%s = %s #%s" % (k,getattr(now, k),v)     """ 返回一個time結構 """ now.timetuple()   """ 返回一個date類型   """ now.date()   """ 返回一個time類型   """ now.time()   """ 當前星期幾。星期一是0,星期於是6 注意這裡是方法,不是屬性哦。 """ now.weekday()   """ 當前星期幾。星期一是1,星期於是7 注意這裡是方法,不是屬性哦。 """ now.isoweekday()   """ 修改當前時間。比如修改成當月1號 """ now.replace(day=1)   past = datetime.datetime(2010,11,12,13,14,15,16)   """ 進行比較運算 返回的是timedelta類型   """ now-past """ 轉成字符串 詳細規則見Time篇   """ strdatetime = now.strftime("%Y-%m-%d %H:%M:%S") """ 字符串生成datetime對象 """ datetime.datetime.strptime(strdatetime, "%Y-%m-%d %H:%M:%S")

    以上所述就是本文的全部內容了,希望大家能夠喜歡。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved