1. Two ways to get the current time:
import datetime,time now = time.strftime("%Y-%m-%d %H:%M:%S") print now now = datetime.datetime.now() print now
2. Get the date of the last day of the last month (the first day of this month minus 1 day)
last = datetime.date(datetime.date.today().year,datetime.date.today().month,1)-datetime.timedelta(1) print last
3. Get the time difference (the time difference unit is seconds, commonly used (Used to calculate the time when the program is running)
starttime = datetime.datetime.now() #long running endtime = datetime.datetime.now() print (endtime - starttime).seconds
4. Calculate the time 10 hours backward from the current time
d1 = datetime.datetime.now() d3 = d1 + datetime.timedelta(hours=10) d3.ctime()
The two commonly used classes are: datetime and timedelta. They can be added or subtracted from each other. Each class has some methods and attributes to view specific values. For example, datetime can view: days (day), hours (hour), day of the week (weekday()), etc.; timedelta can view: days (days), seconds Number (seconds) etc.
5. Time and date formatting symbols in python:
%y two-digit year representation (00-99)
%Y four-digit year representation (000-9999)
%m month (01- 12)
%d Day in the month (0-31)
%H 24-hour hour (0-23)
%I 12-hour hour (01-12)
%M Minutes (00=59)
%S Seconds (00-59)
%a Local simplified week name
%A Local complete week name
%b Local simplified month name
%B Local complete Month name
%c Local corresponding date representation and time representation
%j Day in the year (001-366)
%p Local equivalent of A.M. or P.M.
%U Number of weeks in the year (00 -53) Sunday is the beginning of the week
%w week (0-6), Sunday is the beginning of the week
%W The number of weeks in the year (00-53) Monday is the beginning of the week
%x local The corresponding date representation
%X The corresponding local time representation
%Z The name of the current time zone
%% The % number itself
Attached is the sample code:
Code highlighting produced by Actipro CodeHighlighter (freeware)http:/ /www.CodeHighlighter.com/-->#-*-coding:utf-8-*-
import datetime, calendar
def getYesterday(): today=datetime.date.today() oneday=datetime.timedelta(days=1) yesterday=today-oneday return yesterday
def getToday(): return datetime.date.today()
#Get the dates of the previous few days for the given parameters and return a list
def getDaysByNum(num): today=datetime.date.today() oneday=datetime.timedelta(days=1) li=[] for i in range(0,num): #今天减一天,一天一天减 today=today-oneday #把日期转换成字符串 #result=datetostr(today) li.append(datetostr(today)) return li #将字符串转换成datetime类型 def strtodatetime(datestr,format): return datetime.datetime.strptime(datestr,format) #时间转换成字符串,格式为2008-08-02 def datetostr(date): return str(date)[0:10] #两个日期相隔多少天,例:2008-10-03和2008-10-01是相隔两天 def datediff(beginDate,endDate): format="%Y-%m-%d"; bd=strtodatetime(beginDate,format) ed=strtodatetime(endDate,format) oneday=datetime.timedelta(days=1) count=0 while bd!=ed: ed=ed-oneday count+=1 return count #获取两个时间段的所有时间,返回list def getDays(beginDate,endDate): format="%Y-%m-%d"; bd=strtodatetime(beginDate,format) ed=strtodatetime(endDate,format) oneday=datetime.timedelta(days=1) num=datediff(beginDate,endDate)+1 li=[] for i in range(0,num): li.append(datetostr(ed)) ed=ed-oneday return li #获取当前年份 是一个字符串 def getYear(): return str(datetime.date.today())[0:4] #获取当前月份 是一个字符串 def getMonth(): return str(datetime.date.today())[5:7] #获取当前天 是一个字符串 def getDay(): return str(datetime.date.today())[8:10] def getNow(): return datetime.datetime.now() print getToday() print getYesterday() print getDaysByNum(3) print getDays('2008-10-01','2008-10-05') print '2008-10-04 00:00:00'[0:10] print str(getYear())+getMonth()+getDay() print getNow()