Python strftime () - datum in čas v niz

V tem članku se boste naučili pretvoriti predmete datuma, ure in datuma v enakovreden niz (s pomočjo primerov)

strftime()Metoda vrne niz, ki predstavlja datum in čas uporabe datum, čas ali datetime predmet.

Primer 1: datetime v niz z uporabo strftime ()

Spodnji program pretvori datetimeobjekt, ki vsebuje trenutni datum in uro, v različne oblike nizov.

  from datetime import datetime now = datetime.now() # current date and time year = now.strftime("%Y") print("year:", year) month = now.strftime("%m") print("month:", month) day = now.strftime("%d") print("day:", day) time = now.strftime("%H:%M:%S") print("time:", time) date_time = now.strftime("%m/%d/%Y, %H:%M:%S") print("date and time:",date_time) 

Ko zaženete program, bo rezultat približno tak:

 leto: 2018 mesec: 12 dan: 24 čas: 04:59:31 datum in ura: 24.12.2018, 04:59:31 

Tu so leto, dan, ura in datum_časa nizi, zdaj pa je datetimeobjekt.

Kako deluje strftime ()?

V zgornjem programu %Yso %m, %ditd. Kode formatov. strftime()Postopek traja eno ali več oznak formata kot argument in vrne formatiran niz, ki temelji na njem.

  1. Iz modula smo uvozili datetimerazred datetime. To je zato, ker objekt datetimerazreda lahko dostopa do strftime()metode.
  2. datetimeObjekt, ki vsebuje trenutni datum in čas, ki je shranjena v zdaj spremenljivka.
  3. strftime()Metoda se lahko uporablja za ustvarjanje urejene nize.
  4. Niz, ki ga posredujete strftime()metodi, lahko vsebuje več kot eno kodo oblike.

Primer 2: Ustvarjanje niza iz časovnega žiga

  from datetime import datetime timestamp = 1528797322 date_time = datetime.fromtimestamp(timestamp) print("Date time object:", date_time) d = date_time.strftime("%m/%d/%Y, %H:%M:%S") print("Output 2:", d) d = date_time.strftime("%d %b, %Y") print("Output 3:", d) d = date_time.strftime("%d %B, %Y") print("Output 4:", d) d = date_time.strftime("%I%p") print("Output 5:", d) 

Ko zaženete program, bo rezultat:

 Objekt datuma: 2018-06-12 09:55:22 Izhod 2: 06/12/2018, 09:55:22 Izhod 3: 12. junij 2018 Izhod 4: 12. junij 2018 Izhod 5: 09 

Oblikuj seznam kod

Spodnja tabela prikazuje vse kode, ki jih lahko posredujete strftime()metodi.

Direktive Pomen Primer
%a Skrajšano ime delavnika. Sonce, pon…
%A Polno ime delavnika. Nedelja, ponedeljek,…
%w Delovni dan kot decimalno število. 0, 1,…, 6
%d Dan v mesecu kot decimalno ničlo. 01, 02, …, 31
%-d Dan v mesecu kot decimalno število. 1, 2,…, 30
%b Skrajšano ime meseca. Januar, februar,…, december
%B Polno mesečno ime. Januar februar,…
%m Mesec kot ničlo podstavljeno decimalno število. 01, 02,…, 12
%-m Mesec kot decimalno število. 1, 2,…, 12
%y Leto brez stoletja kot nič oblazinjeno decimalno število. 00, 01,…, 99
%-y Leto brez stoletja kot decimalno število. 0, 1,…, 99
%Y Leto s stoletjem kot decimalno število. 2013, 2019 itd.
%H Ura (24-urna ura) kot decimalno število, oblazinjeno z ničlo. 00, 01,…, 23
%-H Ura (24-urna ura) kot decimalno število. 0, 1,…, 23
%I Ura (12-urna ura) kot decimalno število, oblazinjeno z ničlo. 01, 02,…, 12
%-I Ura (12-urna ura) kot decimalno število. 1, 2,… 12
%p Lokalni AM ali PM. DOPOLDNE POPOLDNE
%M Minuta kot decimalno število, podloženo z ničlo. 00, 01,…, 59
%-M Minuta kot decimalno število. 0, 1,…, 59
%S Drugič kot decimalno število, podloženo z ničlo. 00, 01,…, 59
%-S Drugi kot decimalno število. 0, 1,…, 59
%f Mikrosekunda kot decimalno število, levo oblazinjeno. 000000 - 999999
%z UTC odmik v obliki + HHMM ali -HHMM.
%Z Ime časovnega pasu.
%j Dan v letu kot decimalno število, podloženo z ničlo. 001, 002,…, 366
%-j Dan v letu kot decimalno število. 1, 2,…, 366
%U Številka tedna v letu (nedelja kot prvi dan v tednu). Vsi dnevi v novem letu pred prvo nedeljo se štejejo za 0. teden. 00, 01,…, 53
%W Številka tedna v letu (ponedeljek kot prvi dan v tednu). Vsi dnevi v novem letu pred prvim ponedeljkom se štejejo za 0. teden. 00, 01,…, 53
%c Primerna predstavitev datuma in ure v kraju. Ponedeljek, 30. september 07:06:05 2013
%x Localeova ustrezna predstavitev datuma. 30.9.13
%X Localeova ustrezna časovna predstavitev. 07:06:05
%% Dobesedni znak '%'. %

Primer 3: Primerni datum in ura kraja

  from datetime import datetime timestamp = 1528797322 date_time = datetime.fromtimestamp(timestamp) d = date_time.strftime("%c") print("Output 1:", d) d = date_time.strftime("%x") print("Output 2:", d) d = date_time.strftime("%X") print("Output 3:", d) 

Ko zaženete program, bo rezultat:

 Izhod 1: Torek, 12. junij 09:55:22 2018 Izhod 2: 06/12/18 Izhod 3: 09:55:22 

Format kode %c, %xin %Xse uporabljajo za ustrezni datum in čas zastopanje locale je.

Priporočamo tudi, da preverite strptime Python (). strptime()Način ustvari datetimepredmet iz niza.

Zanimive Članki...