Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Python-Zeitverarbeitung

Detaillierte Erläuterung der Python-Zeitverarbeitung

高洛峰
高洛峰Original
2016-10-18 09:06:281031Durchsuche

1. Zwei Möglichkeiten, die aktuelle Uhrzeit abzurufen:


Datum/Uhrzeit importieren

now = time.strftime("%Y-%m -%d %H:%M:%S")

Jetzt drucken

now = datetime.datetime.now()

Jetzt drucken

2. Holen Sie sich das Datum des letzten Tages des letzten Monats (der erste Tag dieses Monats minus 1 Tag)


last = datetime.date(datetime.date.today( ) .year,datetime.date.today().month,1)-datetime.timedelta(1)

print last

3. Ermitteln Sie den Zeitunterschied (die Einheit des Zeitunterschieds ist Sekunden). , oft in Berechnungsprogrammen verwendet Laufzeit)


starttime = datetime.datetime.now()

#long running

endtime = datetime.datetime.now ()

print (endtime - starttime).seconds


4. Berechnen Sie die Zeit 10 Stunden rückwärts von der aktuellen Zeit

d1 = datetime.datetime.now()

d3 = d1 datetime.timedelta(hours=10)

d3.ctime()


Die beiden häufig verwendeten Klassen sind: datetime und timedelta. Sie können voneinander addiert oder subtrahiert werden. Jede Klasse verfügt über einige Methoden und Attribute zum Anzeigen bestimmter Werte. Beispielsweise kann datetime Folgendes anzeigen: Tage (Tag), Stunden (Stunde), Wochentag (weekday()) usw.; , Sekunden Zahl (Sekunden) usw.


5. Zeit- und Datumsformatierungssymbole in Python:


%y steht für eine zweistellige Jahreszahl (00 -99)

%Y vierstellige Jahresdarstellung (000-9999)

%m Monat (01-12)

%d Tag im Monat ( 0- 31)

%H 24-Stunden-Stunde (0-23)

%I 12-Stunden-Stunde (01-12)

%M Minuten (00=59)

%S Sekunden (00-59)


%ein lokaler vereinfachter Wochenname

%Ein lokaler vollständiger Wochentagsname

%b Lokaler vereinfachter Monatsname

%B Lokaler vollständiger Monatsname

%c Lokale entsprechende Datumsdarstellung und Uhrzeitdarstellung

%j Tag im Jahr (001 -366)

%p Äquivalent zu lokalem Vormittag oder Nachmittag

%U Anzahl der Wochen im Jahr (00-53) Sonntag ist der Wochenanfang

% w Der Wochentag (0-6), Sonntag ist der Wochenanfang

%W Die Anzahl der Wochen im Jahr (00-53) Montag ist der Wochenanfang

%x Die entsprechende lokale Datumsdarstellung

%X Die entsprechende lokale Zeitdarstellung

%Z Der Name der aktuellen Zeitzone

%% Die %-Zahl selbst

Anbei ist ein Beispielcode:

Code-Hervorhebung erstellt mit Actipro CodeHighlighter (Freeware)http://www.CodeHighlighter.com/-->#-*-coding:utf-8-* -

Datum/Uhrzeit, Kalender importieren

def getYesterday():

today=datetime.date.today()

oneday =datetime.timedelta( days=1)

today=today-oneday

return today

def getToday():

return datetime.date .today()

#Erhalten Sie die Daten der letzten Tage für den angegebenen Parameter und geben Sie eine Liste zurück

def getDaysByNum(num):

today =datetime.date.today()

oneday=datetime.timedelta(days=1)

li=[]

for i in range(0,num):

          #Heute minus einen Tag, jeden Tag                                                                                                                                                                                                                                )

li.append(datetostr(today))

return li

#Konvertieren Sie die Zeichenfolge in den Datetime-Typ

def strtodatetime(datestr,format):

return datetime.datetime.strptime(datestr,format)

# Zeit in String konvertieren, das Format ist 2008-08-02

def datetostr(date):

return str(date)[0:10]

#Wie viele Tage liegen zwischen zwei Daten, zum Beispiel: 03.10.2008 und 01.10.2008 liegen zwei Tage auseinander

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

#Alle Zeiten in zwei Zeiträumen abrufen und Liste zurückgeben

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=[]

für i in range(0,num):

li.append(datetostr(ed))

ed=ed-oneday

return li

#Das aktuelle Jahr abrufen ist ein String

def getYear():

return str(datetime.date.today())[0:4]

#Get den aktuellen Monat als String

def getMonth():

return str(datetime.date.today())[5:7]

#Get den aktuellen Tag als String

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()


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn