output
方法和屬性
d1 = date(2011,06,03)#date物件
d1.year、date.month、date.day:年、月、日;
d1.replace(year, month, day):生成乙個新的日期物件,用引數指定的年,月,日代替原有物件中的屬性。(原有物件仍保持不變)
d1.timetuple():返回日期對應的time.struct_time物件;
d1.weekday():返回weekday,如果是星期一,返回0;如果是星期2,返回1,以此類推;
d1.isoweekday():返回weekday,如果是星期一,返回1;如果是星期2,返回2,以此類推;
d1.isocalendar():返回格式如(year,month,day)的元組;
d1.isoformat():返回格式如'yyyy-mm-dd』的字串;
d1.strftime(fmt):和time模組format相同。
output
2、time類
datetime.time(hour[ , minute[ , second[ , microsecond[ , tzinfo] ] ] ] )
靜態方法和字段
time.min、time.max:time類所能表示的最小、最大時間。其中,time.min = time(0, 0, 0, 0), time.max = time(23, 59, 59, 999999);
time.resolution:時間的最小單位,這裡是1微秒;
方法和屬性
t1 = datetime.time(10,23,15)#time物件
t1.hour、t1.minute、t1.second、t1.microsecond:時、分、秒、微秒;
t1.tzinfo:時區資訊;
t1.replace([ hour[ , minute[ , second[ , microsecond[ , tzinfo] ] ] ] ] ):建立乙個新的時間物件,用引數指定的時、分、秒、微秒代替原有物件中的屬性(原有物件仍保持不變);
t1.isoformat():返回型如"hh:mm:ss"格式的字串表示;
t1.strftime(fmt):同time模組中的format;
output
3、datetime類
datetime相當於date和time結合起來。
datetime.datetime (year, month, day[ , hour[ , minute[ , second[ , microsecond[ , tzinfo] ] ] ] ] )
靜態方法和字段
datetime.today():返回乙個表示當前本地時間的datetime物件;
datetime.now([tz]):返回乙個表示當前本地時間的datetime物件,如果提供了引數tz,則獲取tz引數所指時區的本地時間;
datetime.utcnow():返回乙個當前utc時間的datetime物件;#格林威治時間
datetime.fromtimestamp(timestamp[, tz]):根據時間戮建立乙個datetime物件,引數tz指定時區資訊;
datetime.utcfromtimestamp(timestamp):根據時間戮建立乙個datetime物件;
datetime.combine(date, time):根據date和time,建立乙個datetime物件;
datetime.strptime(date_string, format):將格式字串轉換為datetime物件;
output
方法和屬性
dt=datetime.now()#datetime物件
dt.year、month、day、hour、minute、second、microsecond、tzinfo:
dt.date():獲取date物件;
dt.time():獲取time物件;
dt. replace ([ year[ , month[ , day[ , hour[ , minute[ , second[ , microsecond[ , tzinfo] ] ] ] ] ] ] ]):
dt. timetuple ()
dt. utctimetuple ()
dt. toordinal ()
dt. weekday ()
dt. isocalendar ()
dt. isoformat ([ sep] )
dt. ctime ():返回乙個日期時間的c格式字串,等效於time.ctime(time.mktime(dt.timetuple()));
dt. strftime (format)
4.timedelta類,時間加減
使用timedelta可以很方便的在日期上做天days,小時hour,分鐘,秒,毫秒,微妙的時間計算,如果要計算月份則需要另外的辦法。
#coding:utf-8
from datetime import *
dt = datetime.now()
#日期減一天
dt1 = dt + timedelta(days=-1)#昨天
dt2 = dt - timedelta(days=1)#昨天
dt3 = dt + timedelta(days=1)#明天
delta_obj = dt3-dt
print type(delta_obj),delta_obj#1 day, 0:00:00
print delta_obj.days ,delta_obj.total_seconds()#1 86400.0
5、tzinfo時區類
#! /usr/bin/python
# coding=utf-8
from datetime import datetime, tzinfo,timedelta
"""tzinfo是關於時區資訊的類
tzinfo是乙個抽象類,所以不能直接被例項化
"""class utc(tzinfo):
"""utc"""
def __init__(self,offset = 0):
self._offset = offset
def utcoffset(self, dt):
return timedelta(hours=self._offset)
def tzname(self, dt):
return "utc +%s" % self._offset
def dst(self, dt):
return timedelta(hours=self._offset)
#北京時間
beijing = datetime(2011,11,11,0,0,0,tzinfo = utc(8))
print "beijing time:",beijing
#曼谷時間
bangkok = datetime(2011,11,11,0,0,0,tzinfo = utc(7))
print "bangkok time",bangkok
#北京時間轉成曼谷時間
print "beijing-time to bangkok-time:",beijing.astimezone(utc(7))
#計算時間差時也會考慮時區的問題
timespan = beijing - bangkok
print "時差:",timespan
#output***************===
# beijing time: 2011-11-11 00:00:00+08:00
# bangkok time 2011-11-11 00:00:00+07:00
# beijing-time to bangkok-time: 2011-11-10 23:00:00+07:00
# 時差: -1 day, 23:00:00
python簡說(十二)time模組
1.時間戳 print int time.time 2.取當前格式化好的時間 time.strftime y m d h m s 3.時間戳轉為格式化好的時間 time1 time.gmtime int time.time 把時間戳轉成時間元組 res time.strftime y m d h m...
python 日期模組 (time模組)
在python中與事件處理相關的模組有 time datetime calendar 這裡先講解time模組 1.time 模組的引入用import time 1 time.time 返回當前時間的時間戳 1970紀元後經過的浮點秒數 返回結果資料型別是float import time temp ...
Python常用模組 Time模組
time模組中時間表現的格式主要有三種 a timestamp時間戳,時間戳表示的是從1970年1月1日00 00 00開始按秒計算的偏移量 b struct time時間元組,共有九個元素組。c format time 格式化時間,已格式化的結構使時間更具可讀性。包括自定義格式和固定格式。2 主要...