Python strftime () - datetime to string

I denne artikel lærer du at konvertere objekter til dato, tid og dato til dets tilsvarende streng (ved hjælp af eksempler)

Den strftime()metode returnerer en streng, der repræsenterer dato og tid med dato, tid eller datetime objekt.

Eksempel 1: datetime to string using strftime ()

Programmet nedenfor konverterer et datetimeobjekt, der indeholder den aktuelle dato og tid til forskellige strengformater.

  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) 

Når du kører programmet, vil output være som:

 år: 2018 måned: 12 dag: 24 tid: 04:59:31 dato og tid: 24-12-2018, 04:59:31 

Her er år, dag, tid og dato_tid strenge, hvorimod nu er et datetimeobjekt.

Hvordan fungerer strftime ()?

I ovenstående program %Yer %m, %dosv. Formatkoder. Den strftime()metode tager en eller flere format koder som argument og returnerer en formateret streng baseret på det.

  1. Vi importerede datetimeklasse fra datetimemodulet. Det er fordi objektet i datetimeklassen kan få adgang til strftime()metoden.
  2. Det datetimeobjekt, der indeholder aktuelle dato og tid gemmes i nu variabel.
  3. Den strftime()metode kan bruges til at skabe formaterede strenge.
  4. Den streng, du sender til strftime()metoden, kan indeholde mere end et formatkoder.

Eksempel 2: Oprettelse af streng ud fra et tidsstempel

  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) 

Når du kører programmet, vil output være:

 Dato tid objekt: 2018-06-12 09:55:22 Output 2: 06/12/2018, 09:55:22 Output 3: 12 Jun, 2018 Output 4: 12 June, 2018 Output 5: 09AM 

Formatér kodeliste

Tabellen nedenfor viser alle de koder, du kan overføre til strftime()metoden.

Direktiv Betyder Eksempel
%a Forkortet navn på hverdag. Søn, man, …
%A Fuldt navn på hverdage. Søndag Mandag,…
%w Ugedag som et decimaltal. 0, 1,…, 6
%d Månedens dag som en nul polstret decimal. 01, 02,…, 31
%-d Månedens dag som et decimaltal. 1, 2,…, 30
%b Forkortet månedsnavn. Jan, Feb,…, Dec
%B Fuld månedens navn. Januar februar,…
%m Måned som et nul-polstret decimaltal. 01, 02,…, 12
%-m Måned som et decimaltal. 1, 2,…, 12
%y År uden århundrede som et nul-polstret decimaltal. 00, 01,…, 99
%-y År uden århundrede som et decimaltal. 0, 1,…, 99
%Y År med århundrede som et decimaltal. 2013, 2019 osv.
%H Time (24-timers ur) som et nul-polstret decimaltal. 00, 01,…, 23
%-H Time (24-timers ur) som et decimaltal. 0, 1,…, 23
%I Time (12-timers ur) som et nul-polstret decimaltal. 01, 02,…, 12
%-I Time (12-timers ur) som et decimaltal. 1, 2,… 12
%p Lokalets AM eller PM. AM, PM
%M Minut som et nul-polstret decimaltal. 00, 01,…, 59
%-M Minut som et decimaltal. 0, 1,…, 59
%S Andet som et nul-polstret decimaltal. 00, 01,…, 59
%-S Andet som et decimaltal. 0, 1,…, 59
%f Mikrosekund som et decimaltal, nul-polstret til venstre. 000000 - 999999
%z UTC-forskydning i form + HHMM eller -HHMM.
%Z Tidszone navn.
%j Årets dag som et nul-polstret decimaltal. 001, 002,…, 366
%-j Årets dag som et decimaltal. 1, 2,…, 366
%U Årets ugenummer (søndag som den første ugedag). Alle dage i et nyt år forud for den første søndag betragtes som i uge 0. 00, 01,…, 53
%W Ugens nummer på året (mandag som den første ugedag). Alle dage i et nyt år forud for den første mandag betragtes som i uge 0. 00, 01,…, 53
%c Lokalens passende dato og klokkeslæt repræsentation. Man 30. september 07:06:05 2013
%x Lokalens passende datorepræsentation. 09/30/13
%X Lokalens passende tidsrepræsentation. 07:06:05
%% En bogstavelig '%' karakter. %

Eksempel 3: Lokalens passende dato og klokkeslæt

  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) 

Når du kører programmet, vil output være:

 Output 1: Tir Jun 12 09:55:22 2018 Output 2: 06/12/18 Output 3: 09:55:22 

Formater koder %c, %xog %Xbruges til landestandard finder passende dato og tid repræsentation.

Vi anbefaler dig også at kontrollere Python strptime (). Den strptime()metode skaber en datetimegenstand fra en streng.

Interessante artikler...