datatime模塊
datatime模塊是在time模塊的基礎(chǔ)之上做了封裝,提供了更多更好用的類供我們使用员凝,常用的有date响鹃、time、datetime乎串、timedelta店枣、tzinfo。但是為了更靈活的處理時(shí)間,最好是將time模塊和datetime模塊中的精髓學(xué)習(xí)到鸯两。
① date類:主要用于處理年闷旧、月、日钧唐;
② time類:主要用于處理時(shí)、分钝侠、秒该园;
③ datetime類:date類和time類的綜合使用,可以處理年帅韧、月里初、日、時(shí)忽舟、分双妨、秒;
④ timedelta類:主要用于做時(shí)間加減的叮阅;
⑤ tzinfo類:時(shí)區(qū)類斥难;
date類
1)靜態(tài)方法和屬性:直接通過類名調(diào)用;
today():返回本地時(shí)間的一個(gè)date對象帘饶;
fromtimestamp(timestamp):給定一個(gè)時(shí)間戳哑诊,返回一個(gè)date對象;# 這個(gè)函數(shù)很有用
max:date對象能夠表示的最大時(shí)間及刻;
min:date對象能夠表示的最小時(shí)間镀裤;
resolution:date對象表示時(shí)間的最小單位,這里指的是天缴饭;
操作如下:
from datetime import *
import time
date.today()
date.fromtimestamp(time.time())
date.max
date.min
date.resolution
結(jié)果如下:
2)其它常用方法和屬性:通過date對象才能調(diào)用暑劝;
--- "屬性"
d.year、d.month颗搂、d.day:年担猛、月、日丢氢;
--- "方法"
d.replace(year=,month=,day=):生成一個(gè)新的日期對象傅联,用參數(shù)指定的年,月疚察,日代替原有對象中的屬性蒸走。(原有對象仍保持不變)
d.timetuple():返回時(shí)間元組struct_time格式的日期;
d.weekday():返回weekday貌嫡,如果是星期一比驻,返回0该溯;如果是星期2,返回1别惦,以此類推狈茉;
d.isoweekday():返回weekday,如果是星期一掸掸,返回1氯庆;如果是星期2,返回2猾漫,以此類推;
d.isocalendar():返回(year,week,weekday)格式的元組感凤;
d.isoformat():返回格式如'YYYY-MM-DD'的字符串悯周;
d.strftime(format):傳入任意格式符,可以輸出任意格式的日期表示形式陪竿;
先構(gòu)造一個(gè)date對象:
d = date.fromtimestamp(1334567890)
display(d)
結(jié)果如下:
① d.year禽翼、d.month、d.day:年族跛、月闰挡、日;
d = date.fromtimestamp(1334567890)
display(d)
display(d.year,d.month,d.day)
結(jié)果如下:
② d.replace(year=,month=,day=):傳入指定的year或month或day礁哄,生成一個(gè)新日期的date對象长酗,但不改變原有的date對象;
d = date.fromtimestamp(1334567890)
display(d)
yesterday = d.replace(day=15)
display(yesterday)
tommorrow = d.replace(day=17)
display(tommorrow)
z = d.replace(year=2015,month=12)
display(z)
display(d)
操作如下:
③ d.timetuple():返回時(shí)間元組struct_time格式的日期桐绒;
d = date.fromtimestamp(1334567890)
display(d)
display(d.timetuple())
結(jié)果如下:
④ d.weekday()和d.isoweekday():在中國夺脾,主要以d.isoweekday()的使用為主;
d.weekday():返回weekday茉继,如果是星期一咧叭,返回0;如果是星期2烁竭,返回1菲茬,以此類推;
d.isoweekday():返回weekday派撕,如果是星期一婉弹,返回1;如果是星期2终吼,返回2马胧,以此類推;
d = date.fromtimestamp(1334567890)
display(d)
display(d.weekday())
display(d.isoweekday())
結(jié)果如下:
⑤ d.isocalendar():返回(year,week,weekday)格式的元組衔峰;
year:表示當(dāng)前日期的年份佩脊;
week:表示當(dāng)前日期是一年中的第幾周蛙粘;
weekday:表示當(dāng)前日期是星期幾;
d = date.fromtimestamp(1334567890)
display(d)
display(d.isocalendar())
結(jié)果如下:
注意:d.isocalendar()函數(shù)的返回值較為特殊威彰,需要特別注意出牧。
⑥ d.isoformat():返回固定格式如’YYYY-MM-DD’的字符串;
d = date.fromtimestamp(1334567890)
display(d)
display(d.isoformat())
結(jié)果如下:
⑦ d.strftime(format):傳入任意格式符歇盼,可以輸出任意格式的日期表示形式舔痕。
常用的格式符如下所示:
操作如下:
d = date.fromtimestamp(1334567890)
display(d)
d = d.strftime("%Y{y}%m{m}%dnlzdhrv").format(y="年",m="月",d="日")
display(d)
結(jié)果如下:
注意:d.strftime(format)函數(shù)很有用,要特別注意豹缀。只不過在顯示中文這里可能會出現(xiàn)問題伯复,我把這個(gè)最難的給你處理了。