Obecna data i godzina w szczegółowym samouczku Pythona
- 4613
- 138
- Maurycy Napierała
Uzyskanie bieżącej daty i godziny jest powszechnym zadaniem w programowaniu Python. Istnieje kilka sposobów na to, w zależności od twoich potrzeb i dostępnych bibliotek. W tym artykule zbadamy niektóre z najczęstszych metod otrzymywania bieżącej daty i godziny w Pythonie, w tym za pomocą wbudowanego modułu DateTime, modułu czasu i modułu Dateutil. Omówimy również, jak sformatować wartości daty i godziny jako struny i jak konwertować między strefami czasowymi. Niezależnie od tego, czy pracujesz z znacznikami czasu, planujesz zadania, czy po prostu chcesz wyświetlić bieżącą datę i godzinę w programie Python, ten artykuł zawiera potrzebne narzędzia.
Zdobądź aktualną datę i godzinę w Python
Możemy użyć „Datetime”
, 'czas'
, I „Dateutil”
moduły w Pythonie, aby uzyskać datę i godzinę.
- Korzystanie z modułu „DateTime”
Jednym z najpopularniejszych sposobów uzyskania bieżącej daty i godziny w Python jest użycie modułu Datetime. Ten moduł zapewnia zajęcia do pracy z datami, godzinami i znacznikami czasu.
- Aby uzyskać bieżącą datę i godzinę, możesz użyć DATETIME.teraz () funkcja, która zwraca obiekt DATETIME reprezentujący bieżącą datę i godzinę w lokalnej strefie czasowej. Importuj dateTime current_dateTime = Datetime.Datetime.teraz () print (current_dateTime)
1234 Importuj dateTime current_dateTime = Datetime.Datetime.teraz () print (current_dateTime) DateTime.teraz funkcja () zwraca obiekt DATETIME z bieżącą datą i godziną w lokalnej strefie czasowej. Strefa czasowa zależy od systemu operacyjnego, na którym działa tłumacz Python.
- Możesz także określić inną strefę czasową, przekazując argument TZINFO do Datetime.teraz () funkcja. Na przykład, aby uzyskać bieżącą datę i godzinę w strefie czasowej UTC, możesz użyć datetime.funkcja utcnow (). Importuj dateTime current_dateTime_Utc = DateTime.Datetime.utcNow () print (current_dateTime_Utc)
1234 Importuj dateTime current_dateTime_Utc = DateTime.Datetime.utcNow () print (current_dateTime_Utc) - Możesz także utworzyć obiekt DATETIME dla określonej daty i godziny za pomocą konstruktora DATETIME (). Ten konstruktor zajmuje rok, miesiąc, dzień, godzinę, minutę, drugie i mikrosekundowe jako argumenty. Importuj DATETime specyficzne_DateTime = Datetime.DateTime (2022, 12, 25, 12, 0, 0) drukuj (specyficzny_dateTime)
1234 Importuj DATETime specyficzne_DateTime = Datetime.DateTime (2022, 12, 25, 12, 0, 0) drukuj (specyficzny_dateTime)
- Aby uzyskać bieżącą datę i godzinę, możesz użyć DATETIME.teraz () funkcja, która zwraca obiekt DATETIME reprezentujący bieżącą datę i godzinę w lokalnej strefie czasowej. Importuj dateTime current_dateTime = Datetime.Datetime.teraz () print (current_dateTime)
- Korzystanie z modułu „czas”
Innym sposobem uzyskania bieżącej daty i godziny w Pythonie jest użycie modułu czasu. Ten moduł zapewnia funkcje do pracy z wartościami czasowymi.
- Aby uzyskać bieżącą datę i godzinę, możesz użyć czasu.funkcja gmtime (), która zwraca strukturę czasową reprezentującą bieżącą datę i godzinę w strefie czasowej UTC. Importuj czas current_time = czas.gmtime () print (current_time)
1234 Importuj czas current_time = czas.gmtime () print (current_time) - Możesz także użyć czasu.Funkcja LocalTime (), aby uzyskać bieżącą datę i godzinę w lokalnej strefie czasowej. Importuj czas current_local_time = czas.localTime () print (current_local_time)
1234 Importuj czas current_local_time = czas.localTime () print (current_local_time)
- Aby uzyskać bieżącą datę i godzinę, możesz użyć czasu.funkcja gmtime (), która zwraca strukturę czasową reprezentującą bieżącą datę i godzinę w strefie czasowej UTC. Importuj czas current_time = czas.gmtime () print (current_time)
- Korzystanie z modułu „Dateutil”
Inną opcją uzyskania bieżącej daty i godziny w Pythonie jest użycie modułu Dateutil. Ten moduł zapewnia funkcje do pracy z datami i czasami w różnych formatach i strefach czasowych.
- Aby uzyskać bieżącą datę i godzinę, możesz użyć dateutil.Parser.funkcja parse (), która analizuje reprezentację ciągu i godziny i zwraca obiekt datetime. Aby uzyskać bieżącą datę i godzinę, możesz przekazać ciąg „teraz” do tej funkcji. Import Dateutil.parser current_dateTime = dateutil.Parser.parse („teraz”) print (current_dateTime)
1234 Import Dateutil.parser current_dateTime = dateutil.Parser.parse („teraz”) print (current_dateTime) - Aby uzyskać bieżącą datę i godzinę w określonej strefie czasowej za pomocą modułu Dateutil, możesz użyć DATEUTIL.Tz.gettz () funkcja, aby uzyskać obiekt tzinfo dla tej strefy czasowej, a następnie przekazać ten obiekt jako argument TZ do dateutil.Parser.funkcja parse ().
Na przykład, aby uzyskać aktualną strefę czasową Pacific Standard Time (PST), możesz użyć następującego kodu:
Import Dateutil.Parser Import Dateutil.tz pst_tz = dateutil.Tz.gettz („pST”) current_dateTime_pst = dateutil.Parser.parse („teraz”, tz = pst_tz) print (current_dateTime_pst)123456 Import Dateutil.Parserimport Dateutil.tz pst_tz = dateutil.Tz.gettz („pST”) current_dateTime_pst = dateutil.Parser.parse („teraz”, tz = pst_tz) print (current_dateTime_pst) - Możesz także użyć dateutil.Tz.Funkcja tzoffset () do utworzenia obiektu Tzinfo dla strefy czasowej z ustalonym przesunięciem z UTC. Na przykład, aby uzyskać bieżącą datę i godzinę w strefie czasowej standardowej (EST), która jest 5 godzin za UTC, możesz użyć następującego kodu: Import Dateutil.Parser Import Dateutil.tz est_tz = dateutil.Tz.tzoffset („est”, -5 * 60 * 60) current_dateTime_est = dateutil.Parser.parse („teraz”, tz = est_tz) print (current_dateTime_est)
123456 Import Dateutil.Parserimport Dateutil.tz est_tz = dateutil.Tz.tzoffset („est”, -5 * 60 * 60) current_dateTime_est = dateutil.Parser.parse („teraz”, tz = est_tz) print (current_dateTime_est)
- Aby uzyskać bieżącą datę i godzinę, możesz użyć dateutil.Parser.funkcja parse (), która analizuje reprezentację ciągu i godziny i zwraca obiekt datetime. Aby uzyskać bieżącą datę i godzinę, możesz przekazać ciąg „teraz” do tej funkcji. Import Dateutil.parser current_dateTime = dateutil.Parser.parse („teraz”) print (current_dateTime)
Formatowanie daty i godziny w Pythonie
Aby sformatować datę i godzinę w określony sposób, możesz użyć metody Strftime () obiektu DateTime, która przyjmuje ciąg formatu jako argument. String formatu określa, w jaki sposób należy sformatować wartości daty i godziny.
- Na przykład, aby uzyskać bieżącą datę jako ciąg w formacie YYYY-MM-DD, możesz użyć ciągu%y-%m-%D Format: Import DateTime Current_DateTime = Datetime.Datetime.teraz () current_date = current_dateTime.Strftime („%y-%m-%d”) druk (current_date)
12345 Importuj dateTime current_dateTime = Datetime.Datetime.teraz () current_date = current_dateTime.Strftime („%y-%m-%d”) druk (current_date) - Aby uzyskać bieżący czas jako ciąg w formacie HH: MM: SS, możesz użyć ciągu%H:%m:%s Format: import dateTime Current_DateTime = Datetime.Datetime.teraz () current_time = current_dateTime.Strftime („%h:%m:%s”) print (current_time)
12345 Importuj dateTime current_dateTime = Datetime.Datetime.teraz () current_time = current_dateTime.Strftime („%h:%m:%s”) print (current_time) - Aby uzyskać bieżącą datę i godzinę jako ciąg w formacie Yyyy-MM-DD HH: MM: SS, możesz połączyć%y-%m-%d i%h:%m:%s struny formatu: import datetime Current_DateTime = DateTime.Datetime.teraz () current_dateTime_string = current_dateTime.Strftime („%y-%m-%d%h:%m:%s”) druk (current_dateTime_String)
12345 Importuj dateTime current_dateTime = Datetime.Datetime.teraz () current_dateTime_string = current_dateTime.Strftime („%y-%m-%d%h:%m:%s”) druk (current_dateTime_String) - Dostępnych jest wiele innych strun formatowych, które pozwalają dostosować wyjście na różne sposoby. Na przykład możesz użyć ciągu %I formatu, aby uzyskać godzinę w 12-godzinnym formacie z wiodącym zero dla jednocyfrowych godzin, oraz ciąg formatu %P, aby uzyskać wskaźnik AM/PM. Importuj dateTime current_dateTime = Datetime.Datetime.teraz () current_time_12h = current_dateTime.Strftime („%I:%m:%s%p”) print (current_time_12h)
12345 Importuj dateTime current_dateTime = Datetime.Datetime.teraz () current_time_12h = current_dateTime.Strftime („%I:%m:%s%p”) print (current_time_12h)
Pełną listę dostępnych strun formatowych można znaleźć w dokumentacji metody strftime (): https: // dokumenty.pyton.org/3/biblioteka/dataTime.html#strftime-strptime-behavior
Przekształcenie między strefami czasowymi w Python
Aby przekonwertować obiekt DATETIME z jednej strefy czasowej na inny za pomocą modułu Dateutil, możesz użyć DATEUTIL.Tz.gettz () funkcja, aby uzyskać obiekt tzinfo dla docelowej strefy czasowej, a następnie przekazać ten obiekt jako argument TZ do dateutil.Parser.funkcja parse ().
- Na przykład, aby przekonwertować obiekt DATETIME z strefy czasowej Pacific Standard Time (PST) do strefy czasowej standardowej (EST), możesz użyć następującego kodu: Import Dateutil.Parser Import Dateutil.tz pst_tz = dateutil.Tz.gettz („pST”) est_tz = dateutil.Tz.gettz („est”) pst_dateTime = dateutil.Parser.Parse („2022-12-25 12:00:00”, tz = pst_tz) est_DateTime = pST_DateTime.AstimeZone (est_tz) print (est_DateTime)
123456789 Import Dateutil.Parserimport Dateutil.tz pst_tz = dateutil.Tz.gettz („pST”) est_tz = dateutil.Tz.gettz („est”) pst_dateTime = dateutil.Parser.Parse („2022-12-25 12:00:00”, tz = pst_tz) est_DateTime = pST_DateTime.AstimeZone (est_tz) print (est_DateTime) - Możesz także użyć dateutil.Tz.Funkcja tzoffset () do utworzenia obiektu Tzinfo dla strefy czasowej z ustalonym przesunięciem z UTC. Na przykład, aby przekonwertować obiekt DATETIME z strefy czasowej UTC na strefę czasu standardowego (EST), która jest 5 godzin za UTC, możesz użyć następującego kodu: Importuj Dateutil.Parser Import Dateutil.tz utc_tz = dateutil.Tz.tzoffset („UTC”, 0) est_tz = dateutil.Tz.tzoffset („est”, -5 * 60 * 60) UTC_DATETIME = DATEUTIL.Parser.Parse („2022-12-25 12:00:00”, Tz = UTC_TZ) EST_DATETIME = UTC_DATETIME.AstimeZone (est_tz) print (est_DateTime)
123456789 Import Dateutil.Parserimport Dateutil.tz utc_tz = dateutil.Tz.tzoffset („UTC”, 0) est_tz = dateutil.Tz.tzoffset („est”, -5 * 60 * 60) UTC_DATETIME = DATEUTIL.Parser.Parse („2022-12-25 12:00:00”, Tz = UTC_TZ) EST_DATETIME = UTC_DATETIME.AstimeZone (est_tz) print (est_DateTime) - Zauważ, że metoda AsTimeZone () działa tylko wtedy, gdy obiekt DateTime ma atrybut TzInfo. Jeśli obiekt DateTime nie ma atrybutu Tzinfo, zakłada się, że jest w lokalnej strefie czasowej. W takim przypadku możesz użyć dateutil.Parser.funkcja parse (), aby utworzyć nowy obiekt DATETIME z określoną strefą czasową, a następnie użyj metody AstimeZone (), aby przekonwertować ją do innej strefy czasowej. Import Dateutil.Parser Import Dateutil.tz local_tz = dateutil.Tz.gettz () est_tz = dateutil.Tz.gettz („est”) local_DateTime = DateTime.Datetime.teraz () est_DateTime = dateutil.Parser.parse (local_dateTime.ISOFORMAT (), tz = local_tz).AstimeZone (est_tz) print (est_DateTime)
123456789 Import Dateutil.Parserimport Dateutil.tz local_tz = dateutil.Tz.gettz () est_tz = dateutil.Tz.gettz („est”) local_DateTime = DateTime.Datetime.teraz () est_DateTime = dateutil.Parser.parse (local_dateTime.ISOFORMAT (), tz = local_tz).AstimeZone (est_tz) print (est_DateTime)
Mam nadzieję, że te przykłady pomogły ci zrozumieć, jak uzyskać obecną datę i godzinę w Pythonie i jak przekonwertować między strefami czasowymi.
Wniosek
Podsumowując, moduł DateTime jest wygodnym i potężnym narzędziem do pracy z datami, godzinami i znacznikami czasu w Python. Możesz użyć datetime.teraz () funkcja, aby uzyskać bieżącą datę i godzinę w lokalnej strefie czasowej lub datetime.funkcja utcnow (), aby uzyskać bieżącą datę i godzinę w strefie czasowej UTC. Możesz także użyć konstruktora DATETIME (), aby utworzyć obiekt DATETIME dla określonej daty i godziny.
Moduł czasowy zapewnia funkcje do pracy z wartościami czasowymi, takimi jak funkcje GMTIME () i localTime (), które zwracają strukturę czasową reprezentującą bieżącą datę i godzinę odpowiednio w UTC i lokalnych strefach czasowych.
Moduł DATEUTIL zapewnia dodatkowe narzędzia do pracy z datami i godzinami, takie jak możliwość analizowania dat i ciągów i konwersji między strefami czasowymi.
Po uzyskaniu obiektu datetime możesz użyć metody strftime () do sformatowania wartości daty i godziny jako sznurków, oraz metody AstimeZone () do konwersji obiektu Datetime na inną strefę czasową.