# -*- coding: utf-8 -*- #datetime類 #datetime是date與time的結合體,包括date與time的所有資訊。 #它的建構函式如下: #datetime. datetime (year, month, day[ , hour[ , minute[ , second[ , microsecond[ , tzinfo] ] ] ] ] ) #各參數的含義與date、time的建構函式中的一樣,要注意參數值的範圍。# 1. datetime類定義的類屬性與方法:#datetime.min、datetime.max:datetime所能表示的最小值與最大值;#print: datetime.max: 9999-12-31 23:59:59.999999#print: datetime.min: 0001-01-01 00:00:00from datetime import * import timeprint 'datetime.max:' , datetime.max print 'datetime.min:' , datetime.min #datetime.resolution:datetime最小單位;#print: datetime.resolution: 0:00:00.000001print 'datetime.resolution:' , datetime.resolution #datetime.today():返回一個表示當前本地時間的datetime對象;#print: today(): 2012-09-12 19:37:50.721000print 'today():' , datetime.today() #datetime.now([tz]):返回一個表示當前本地時間的datetime對象,如果提供了參數tz,則擷取tz參數所指時區的本地時間;#print: now(): 2012-09-12 19:37:50.738000print 'now():' , datetime.now() #datetime.utcnow():返回一個當前utc時間的datetime對象;#print: 2012-09-12 11:37:50.739000print 'utcnow():' , datetime.utcnow() #datetime.fromtimestamp(timestamp[, tz]):根據時間戮建立一個datetime對象,參數tz指定時區資訊;#print: fromtimestamp(tmstmp): 2012-09-12 19:37:50.741000print 'fromtimestamp(tmstmp):' , datetime.fromtimestamp(time.time()) #datetime.utcfromtimestamp(timestamp):根據時間戮建立一個datetime對象;#print: utcfromtimestamp(tmstmp): 2012-09-12 11:37:50.742000print 'utcfromtimestamp(tmstmp):' , datetime.utcfromtimestamp(time.time()) #datetime.combine(date, time):根據date和time,建立一個datetime對象;#print: datetime.combine(date,time): 2012-09-12 19:46:05d = date(2012,9,12)from datetime import * t = time(19,46,5)print 'datetime.combine(date,time): ',datetime.combine(d,t)#datetime.strptime(date_string, format):將格式字串轉換為datetime對象;#print: 2007-03-04 21:08:12print datetime.strptime("2007-03-04 21:08:12", "%Y-%m-%d %H:%M:%S")#2. datetime類提供的執行個體方法與屬性dt = datetime.strptime("2012-09-12 21:08:12", "%Y-%m-%d %H:%M:%S")#print: 2012 9 12 21 8 12 0 Noneprint dt.year,dt.month,dt.day,dt.hour,dt.minute,dt.second,dt.microsecond,dt.tzinfoprint dt.date()print dt.time()print dt.replace(year = 2013)print dt.timetuple()print dt.utctimetuple()print dt.toordinal()print dt.weekday()print dt.isocalendar()#print dt.isoformat([sep])#datetime. ctime ():返回一個日期時間的C格式字串,等效於time.ctime(time.mktime(dt.timetuple()));#3. 格式字串# datetime. strftime (format)# %a 星期的簡寫。如 星期三為Web# %A 星期的全寫。如 星期三為Wednesday# %b 月份的簡寫。如4月份為Apr# %B月份的全寫。如4月份為April # %c: 日期時間的字串表示。(如: 04/07/10 10:43:39)# %d: 日在這個月中的天數(是這個月的第幾天)# %f: 微秒(範圍[0,999999])# %H: 小時(24小時制,[0, 23])# %I: 小時(12小時制,[0, 11])# %j: 日在年中的天數 [001,366](是當年的第幾天)# %m: 月份([01,12])# %M: 分鐘([00,59])# %p: AM或者PM# %S: 秒(範圍為[00,61],為什麼不是[00, 59],參考python手冊~_~)# %U: 周在當年的周數當年的第幾周),星期天作為周的第一天# %w: 今天在這周的天數,範圍為[0, 6],6表示星期天# %W: 周在當年的周數(是當年的第幾周),星期一作為周的第一天# %x: 日期文字(如:04/07/10)# %X: 時間字串(如:10:43:39)# %y: 2個數字表示的年份# %Y: 4個數字表示的年份# %z: 與utc時間的間隔 (如果是本地時間,返回Null 字元串)# %Z: 時區名稱(如果是本地時間,返回Null 字元串)# %%: %% => %dt = datetime.now()#print: (%Y-%m-%d %H:%M:%S %f): 2012-09-12 23:04:27 145000print '(%Y-%m-%d %H:%M:%S %f): ', dt.strftime('%Y-%m-%d %H:%M:%S %f')#print: (%Y-%m-%d %H:%M:%S %p): 12-09-12 11:04:27 PMprint '(%Y-%m-%d %H:%M:%S %p): ', dt.strftime('%y-%m-%d %I:%M:%S %p')#print: %a: Wed print '%%a: %s ' % dt.strftime('%a')#print: %A: Wednesdayprint '%%A: %s ' % dt.strftime('%A')#print: %b: Sep print '%%b: %s ' % dt.strftime('%b')#print: %B: Septemberprint '%%B: %s ' % dt.strftime('%B')#print: 日期時間%c: 09/12/12 23:04:27print '日期時間%%c: %s ' % dt.strftime('%c')#print: 日期%x:09/12/12print '日期%%x:%s ' % dt.strftime('%x')#print: 時間%X:23:04:27print '時間%%X:%s ' % dt.strftime('%X')#print: 今天是這周的第3天print '今天是這周的第%s天 ' % dt.strftime('%w')#print: 今天是今年的第256天 print '今天是今年的第%s天 ' % dt.strftime('%j')#print: 今周是今年的第37周print '今周是今年的第%s周 ' % dt.strftime('%U')—— —— —— EOF —— —— ——作者: Once-ler| http://blog.csdn.net/wirelessqa郵箱: wirelessqa.me@gmail.com微博: http://weibo.com/wirelessqa 轉載請註明來源: Once-ler — http://blog.csdn.net/wirelessqa