Python strftime () - ώρα για τη συμβολοσειρά

Σε αυτό το άρθρο, θα μάθετε να μετατρέπετε αντικείμενα ημερομηνίας, ώρας και ώρας σε αντίστοιχη συμβολοσειρά (με τη βοήθεια παραδειγμάτων)

Η strftime()μέθοδος επιστρέφει μια συμβολοσειρά που αντιπροσωπεύει ημερομηνία και ώρα χρησιμοποιώντας ημερομηνία, ώρα ή αντικείμενο χρόνου.

Παράδειγμα 1: ώρα για τη συμβολοσειρά χρησιμοποιώντας strftime ()

Το παρακάτω πρόγραμμα μετατρέπει ένα datetimeαντικείμενο που περιέχει την τρέχουσα ημερομηνία και ώρα σε διαφορετικές μορφές συμβολοσειράς.

  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) 

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι όπως:

 έτος: 2018 μήνας: 12 ημέρα: 24 ώρα: 04:59:31 ημερομηνία και ώρα: 12/24/2018, 04:59:31 

Εδώ, έτος, ημέρα, ώρα και ημερομηνία_ ώρα είναι χορδές, ενώ τώρα είναι ένα datetimeαντικείμενο.

Πώς λειτουργεί το strftime ();

Στο παραπάνω πρόγραμμα, %Y, %m, %dκλπ κώδικες μορφή. Η strftime()μέθοδος παίρνει έναν ή περισσότερους κωδικούς μορφής ως όρισμα και επιστρέφει μια μορφοποιημένη συμβολοσειρά βάσει αυτής.

  1. Εισαγάγαμε την datetimeτάξη από την datetimeενότητα. Είναι επειδή το αντικείμενο της datetimeκλάσης μπορεί να αποκτήσει πρόσβαση στη strftime()μέθοδο.
  2. Το datetimeαντικείμενο που περιέχει την τρέχουσα ημερομηνία και ώρα αποθηκεύεται σε μεταβλητή τώρα.
  3. Η strftime()μέθοδος μπορεί να χρησιμοποιηθεί για τη δημιουργία διαμορφωμένων συμβολοσειρών.
  4. Η συμβολοσειρά που μεταβιβάζετε στη strftime()μέθοδο μπορεί να περιέχει περισσότερους από έναν κωδικούς μορφής.

Παράδειγμα 2: Δημιουργία συμβολοσειράς από μια χρονική σήμανση

  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) 

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:

 Αντικείμενο ημερομηνίας ώρας: 2018-06-12 09:55:22 Έξοδος 2: 06/12/2018, 09:55:22 Έξοδος 3: 12 Ιουν, 2018 Έξοδος 4: 12 Ιουνίου, 2018 Έξοδος 5: 09AM 

Μορφοποίηση λίστας κωδικών

Ο παρακάτω πίνακας δείχνει όλους τους κωδικούς που μπορείτε να μεταβιβάσετε στη strftime()μέθοδο.

Διευθυντικός Εννοια Παράδειγμα
%a Συντομευμένο όνομα της εβδομάδας. Κυρ, Δευ,…
%A Πλήρες όνομα ημέρας της εβδομάδας. Κυριακή Δευτέρα,…
%w Ημέρα της εβδομάδας ως δεκαδικός αριθμός. 0, 1,…, 6
%d Ημέρα του μήνα ως δεκαδικό δεκαδικό. 01, 02,…, 31
%-d Ημέρα του μήνα ως δεκαδικός αριθμός. 1, 2,…, 30
%b Συντομευμένο όνομα μήνα. Ιαν, Φεβ…, Δεκ
%B Όνομα πλήρους μήνα. Ιανουάριος Φεβρουάριος,…
%m Μήνας ως δεκαδικός αριθμός με μηδενική επένδυση. 01, 02,…, 12
%-m Μήνας ως δεκαδικός αριθμός. 1, 2,…, 12
%y Έτος χωρίς αιώνα ως δεκαδικός δεκαδικός αριθμός. 00, 01,…, 99
%-y Έτος χωρίς αιώνα ως δεκαδικός αριθμός. 0, 1,…, 99
%Y Έτος με αιώνα ως δεκαδικός αριθμός. 2013, 2019 κ.λπ.
%H Ώρα (24ωρο ρολόι) ως δεκαδικός αριθμός με μηδενική επένδυση 00, 01,…, 23
%-H Ώρα (24ωρο ρολόι) ως δεκαδικός αριθμός. 0, 1,…, 23
%I Ώρα (ρολόι 12 ωρών) ως δεκαδικός δεκαδικός αριθμός. 01, 02,…, 12
%-I Ώρα (ρολόι 12 ωρών) ως δεκαδικός αριθμός. 1, 2,… 12
%p Το τοπικό AM ή PM. Π.Μ. Μ.Μ
%M Λεπτό ως δεκαδικός αριθμός με μηδενική επένδυση. 00, 01,…, 59
%-M Λεπτό ως δεκαδικός αριθμός. 0, 1,…, 59
%S Δεύτερος ως δεκαδικός αριθμός με μηδενικό. 00, 01,…, 59
%-S Δεύτερος ως δεκαδικός αριθμός. 0, 1,…, 59
%f Μικροδευτερόλεπτο ως δεκαδικός αριθμός, μηδενικός στα αριστερά. 000000 - 999999
%z Μετατόπιση UTC με τη μορφή + HHMM ή -HHMM.
%Z Όνομα ζώνης ώρας.
%j Ημέρα του έτους ως μηδενικός δεκαδικός αριθμός. 001, 002,…, 366
%-j Ημέρα του έτους ως δεκαδικός αριθμός. 1, 2,…, 366
%U Αριθμός εβδομάδας του έτους (Κυριακή ως πρώτη ημέρα της εβδομάδας). Όλες οι ημέρες σε ένα νέο έτος που προηγείται της πρώτης Κυριακής θεωρείται ότι είναι στην εβδομάδα 0. 00, 01,…, 53
%W Αριθμός εβδομάδας του έτους (Δευτέρα ως πρώτη ημέρα της εβδομάδας). Όλες οι ημέρες σε ένα νέο έτος που προηγείται της πρώτης Δευτέρας θεωρούνται ότι είναι στην εβδομάδα 0. 00, 01,…, 53
%c Η κατάλληλη παράσταση ημερομηνίας και ώρας του Locale. Δευ 30 Σεπ 07:06:05 2013
%x Η κατάλληλη αναπαράσταση ημερομηνίας της περιοχής. 09/30/13
%X Η κατάλληλη αναπαράσταση της τοπικής ώρας. 07:06:05
%% Ένας κυριολεκτικός χαρακτήρας '%'. %

Παράδειγμα 3: Η κατάλληλη ημερομηνία και ώρα της περιοχής

  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) 

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:

 Έξοδος 1: Τρί 12 Ιουνίου 09:55:22 2018 Έξοδος 2: 06/12/18 Έξοδος 3: 09:55:22 

Διαμορφώστε τους κωδικούς %c, %xκαι %Xχρησιμοποιούνται για την κατάλληλη ημερομηνία και ώρα εκπροσώπηση της τοπικής ρύθμισης του.

Σας προτείνουμε επίσης να ελέγξετε το Python strptime (). Η strptime()μέθοδος δημιουργεί ένα datetimeαντικείμενο από μια συμβολοσειρά.

ενδιαφέροντα άρθρα...