Python strftime () - datetime la șir

În acest articol, veți învăța să convertiți obiectele de dată, oră și datetime în șirul său echivalent (cu ajutorul exemplelor)

strftime()Metoda returnează un șir de data și ora reprezentând folosind data, ora sau datetime obiect.

Exemplul 1: datetime la șir folosind strftime ()

Programul de mai jos convertește un datetimeobiect care conține data și ora curente în diferite formate de șiruri.

  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) 

Când rulați programul, ieșirea va fi ceva de genul:

 an: 2018 lună: 12 zi: 24 oră: 04:59:31 data și ora: 24.12.2018, 04:59:31 

Aici, anul, ziua, ora și data_ ora sunt șiruri, în timp ce acum este un datetimeobiect.

Cum funcționează strftime ()?

În programul de mai sus, %Y, %m, %detc sunt coduri de format. strftime()Metoda ia una sau mai multe coduri de format ca un argument și returnează un șir în formatul bazat pe ea.

  1. Am importat datetimeclasa din datetimemodul. Este pentru că obiectul datetimeclasei poate accesa strftime()metoda.
  2. datetimeObiectul care conține data și ora curentă este stocată în variabila acum.
  3. strftime()Metoda poate fi folosită pentru a crea siruri de caractere formatat.
  4. Șirul pe care îl transmiteți strftime()metodei poate conține mai multe coduri de format.

Exemplul 2: Crearea șirului dintr-un timestamp

  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) 

Când rulați programul, ieșirea va fi:

 Data orei obiect: 2018-06-12 09:55:22 Ieșire 2: 06/12/2018, 09:55:22 Ieșire 3: 12 iunie, 2018 Ieșire 4: 12 iunie, 2018 Ieșire 5: 09AM 

Formatați lista codurilor

Tabelul de mai jos prezintă toate codurile pe care le puteți transmite strftime()metodei.

Directivă Sens Exemplu
%a Numele prescurtat al zilei săptămânii. Soare, luni, …
%A Numele întreg al săptămânii. Duminică luni,…
%w Ziua săptămânii ca număr zecimal. 0, 1,…, 6
%d Ziua lunii ca o zecimală completată cu zero. 01, 02, …, 31
%-d Ziua lunii ca număr zecimal. 1, 2, …, 30
%b Numele lunii prescurtate. Ianuarie, februarie,…, dec
%B Numele lunii complete. Ianuarie februarie,…
%m Luna ca număr zecimal completat zero. 01, 02,…, 12
%-m Luna ca număr zecimal. 1, 2,…, 12
%y Anul fără secol ca număr zecimal neatenit. 00, 01, …, 99
%-y An fără secol ca număr zecimal. 0, 1, …, 99
%Y An cu secolul ca număr zecimal. 2013, 2019 etc.
%H Ora (ceasul de 24 de ore) ca număr zecimal căptușit zero. 00, 01, …, 23
%-H Ora (ceasul de 24 de ore) ca număr zecimal. 0, 1, …, 23
%I Ora (ceasul de 12 ore) ca număr zecimal căptușit zero. 01, 02,…, 12
%-I Ora (ceasul de 12 ore) ca număr zecimal. 1, 2,… 12
%p Locale AM ​​sau PM. AM PM
%M Minutul ca număr zecimal completat cu zero. 00, 01, …, 59
%-M Minutul ca număr zecimal. 0, 1, …, 59
%S În al doilea rând ca un număr zecimal căptușit zero. 00, 01, …, 59
%-S Al doilea ca număr zecimal. 0, 1, …, 59
%f Microsecunda ca număr zecimal, zero-căptușit în stânga. 000000 - 999999
%z Decalaj UTC sub forma + HHMM sau -HHMM.
%Z Numele fusului orar.
%j Ziua anului ca număr zecimal cu căptușeală zero. 001, 002,…, 366
%-j Ziua anului ca număr zecimal. 1, 2,…, 366
%U Numărul săptămânii din an (duminica ca prima zi a săptămânii). Toate zilele dintr-un an nou care preced prima duminică sunt considerate a fi în săptămâna 0. 00, 01, …, 53
%W Numărul săptămânii din an (luni ca prima zi a săptămânii). Toate zilele dintr-un nou an care precede prima zi de luni sunt considerate a fi în săptămâna 0. 00, 01, …, 53
%c Reprezentarea corespunzătoare a datei și orei locale. Luni 30 septembrie 07:06:05 2013
%x Reprezentarea corespunzătoare a datei locale. 30.09.13
%X Reprezentarea timpului corespunzător localului. 07:06:05
%% Un caracter literal „%”. %

Exemplul 3: data și ora corespunzătoare localizării

  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) 

Când rulați programul, ieșirea va fi:

 Ieșire 1: mar 12 iunie 09:55:22 2018 Ieșire 2: 06/12/18 Ieșire 3: 09:55:22 

Formatați coduri %c, %xși %Xsunt folosite pentru data și ora de reprezentare corespunzătoare locale a lui.

De asemenea, vă recomandăm să verificați Python strptime (). strptime()Metoda creează un datetimeobiect dintr - un șir de caractere.

Articole interesante...