Home > Backend Development > Python Tutorial > Detailed explanation of python time processing

Detailed explanation of python time processing

大家讲道理
Release: 2016-11-07 16:40:07
Original
1186 people have browsed it

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
Copy after login

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
Copy after login

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
Copy after login

4. Calculate the time 10 hours backward from the current time

d1 = datetime.datetime.now()
d3 = d1 + datetime.timedelta(hours=10)
d3.ctime()
Copy after login

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
Copy after login
def getToday():   
    return datetime.date.today()
Copy after login

#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()
Copy after login


Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template