logo

Епоха на Python до Datetime

В следващия урок ще разберем преобразуването на epoch в DateTime в Език за програмиране Python използвайки някои примери. Ще използваме Python epoch, за да преобразуваме епохата съответно в дата и час. Ще разгледаме и следните теми:

  1. Преобразуване на DateTime в епоха
  2. Преобразуване на епоха в низ DateTime
  3. Преобразуване на епоха в DateTime милисекунди
  4. Преобразуване на епоха в часова зона DateTime
  5. Преобразуване на Unix епоха в DateTime
  6. Преобразуване на DateTime в епоха време в милисекунди
  7. Преобразуване на времево клеймо на епохата в DateTime
  8. Python epoch DateTime година е извън диапазона

Но преди да започнем, нека разберем накратко времето на епохата в Python.

Какво е епохално време в Python?

Епохалното време, наричано още Unix време или POSIX време, е рамка за проследяване на времето като различни секунди, които са изминали от епохата на Unix, което е 12 ч. UTC на 1 януари 1970 г. Тази рамка се използва широко при определяне на рамки и програмни диалекти , включително Python.

В Python можем да работим с age time, като използваме модула time, който дава възможности за контролиране на стойности, свързани с времето. Една от основните възможности за управление на времето за възраст е time.time(), което връща текущото време в секунди от възрастта като номер на дрейфираща точка.

Преобразуване на епохално време в DateTime с помощта на Python

Можем да използваме Python datetime.fromtimestamp() функция, за да преобразувате времето на епохата в DateTime. Нека разгледаме следния пример, демонстриращ преобразуването на епохата на Python в DateTime.

Пример:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 40246871 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time ) 

Изход:

 Given epoch time: 40246871 Converted Datetime: 1971-04-12 01:11:11 

Обяснение:

jpa срещу хибернация

В горния пример модулът за дата и час се импортира, като се взема предвид контролът на стойностите за дата и час. След това променливата epoch_time се отделя от конкретната стойност от 40246871, адресирайки изместените секунди от епохата на Unix (1 януари 1970 г., 00:00:00 UTC).

Основната полезност на съдържанието се крие в използването на възможността datetime.fromtimestamp(). Тази възможност изисква известна инвестиция (epoch_time) и я променя в по-разбираема конфигурация чрез създаване на обект datetime. Следващият обект datetime, адресиращ същата дата и час, се поставя в променливата date_time.

За да даде видимост на промяната, съдържанието включва две прокламации за print(). Първият, print('Given age time:', epoch_time), показва оценката за първия възрастов час, докато следващият, print('Converted Datetime:', date_time), дава променената стойност спрямо datetime.

Преобразуване на DateTime в време на епоха с помощта на Python

За да преобразуваме DateTime в време на епоха, ще използваме клеймо за време () функция. Първо, нека разгледаме следния пример, илюстриращ преобразуването на DateTime в епоха.

Пример:

 # Here, we are importing the datetime package import datetime # Here, we are using the timestamp() function to convert datetime into epoch time epoch_time = datetime.datetime(2021, 6, 9, 2, 0).timestamp() # Here, we are printing the values print('Converted epoch time:', epoch_time) 

Изход:

 Converted epoch time: 1623184200.0 

Обяснение:

В горния пример модулът за дата и час се импортира за работа с дейности, свързани с дата и час. Съдържанието показва промяната на конкретна дата и час в възрастово време, използвайки възможността timestamp().

Взаимодействието започва чрез създаване на обект за дата и час, адресиращ 9 юни 2021 г. в 2:00 ч. сутринта. След това този обект datetime се предава като конкуренция на способността timestamp(), която връща същото възрастово време (количеството секунди, които са изминали от епохата на Unix, 1 януари 1970 г., 00:00:00 UTC). Следващото възрастово време се съхранява в променливата epoch_time.

Съдържанието завършва с прокламация на print(): print('Converted age time:', epoch_time), което дава определеното време за възраст за предварително дефинираната дата и час. Преобразуване на епохата в низ DateTime с помощта на Python За да преобразуваме епохата в низ datetime, трябва да преобразуваме епохата в datetime и след това да предадем получената променлива datetime на функцията strftime(), за да я преобразуваме успешно в низ datetime.

Пример:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 700024 # Here, we are using datetime.fromtimestamp() function to convert epoch time into datetime object mytimestamp = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using strftime() function to convert datetime_str = mytimestamp.strftime( '%Y - %m - %d %H : %M : %S') # Here, we are printing the values print('Given epoch time:', epoch_time) print('Converted datetime string:', datetime_str) 

Изход:

 Given epoch time: 700024 Converted datetime string: 1970 - 01 - 09 07 : 57 : 04 

Обяснение:

В горния пример ние отново импортирахме Време за среща библиотека. След това използвахме datetime.fromtimestamp() функция, за да преобразува дадена епоха време в datetime и след това да го предаде на strftime() функция за преобразуване на обекта datetime в низ за datetime. The strftime() функционалните параметри са кодовете на форматите, в които искахме да персонализираме низа.

    %Иобозначава годината%mобозначава месеца%добозначава деня%Hобозначава час%Mобозначава минутата%Собозначава секунди

Преобразуване на времето на епохата в милисекунди DateTime с помощта на Python

Можем да получим DateTime заедно с милисекунди от времето на епохата, като използваме метода, който направихме за преобразуването на времето на епохата в DateTime. Нека разгледаме следния пример, демонстриращ същото.

Пример:

 # Here, we are importing the datetime package import datetime # Here, we are given epoch time epoch_time = 402471.238201 # Here, we are using the datetime.fromtimestamp() function date_time = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the value print('Given epoch time:', epoch_time) print('Converted Datetime:', date_time ) 

Изход:

 Given epoch time: 402471.238201 Converted Datetime: 1970-01-05 21:17:51.238201 

Обяснение:

В горния пример модулът за дата и час се импортира, за да работи с обработката на дейности, свързани с дата и час. Основната роля на съдържанието е да се променя за даден период от време, определен като 402471,238201 секунди, в разбираема конфигурация, използваща както обект за дата, така и организиран низ.

Съдържанието се връща, за да използва способността на datetime.fromtimestamp() за промяна на времевата възраст в обект datetime. Следващият обект datetime, поставен в променливата date_time, илюстрира тънкостите на сравняването на дата и час. Най-накрая съдържанието отпечатва както първото възрастово време, така и променения обект за дата и време.

Тези print() прокламации произвеждат добив, показващ както грубото възрастово време, така и организирания обект за дата и време, давайки разумно изобразяване на първия времеви печат и неговото приспособяване към човека.

Преобразуване на времето на епохата в часова зона DateTime с помощта на Python

Можем да използваме часова зона() функция на пиц пакет, за да конвертирате епохалното време в часовата зона DateTime. Нека разгледаме следния пример, демонстриращ преобразуването на същото.

Пример:

 # Here, we are importing the required package(s) and module(s) from datetime import datetime import pytz # Here, we are using the timezone() function my_timezone = pytz.timezone('CST6CDT') # Here, we are using the localize() function date_timezone = my_timezone.localize( datetime( 2021, 6, 10, 9, 34, 32 ), is_dst = None ) # Here, we are printing the values print( 'DateTime Time zone:', date_timezone ) 

Изход:

 DateTime Time zone: 2021-06-10 09:34:32-05:00 

Обяснение:

В горния пример модулът datetime се използва заедно с модула pytz за работа с обекти за дата и час в конкретен времеви регион. Основната цел на съдържанието е да създаде обект за дата и час и изрично да посочи неговата точка в часовата зона на „CST6CDT“ (фокално стандартно време с време за запазване на слънчева светлина), след което в този момент да отпечата следващите дата и час.

По този начин възможността за времева зона() от модула pytz се използва за създаване на обект за времеви регион, адресиращ „CST6CDT“. След това възможността restrict() от обекта за времеви регион се използва за установяване на точката в часовата зона за определен обект за дата и час (10 юни 2021 г., 9:34:32)

Границата is_dst=None показва, че данните за времето за пестене на светлина (DST) не са недвусмислено дадени, позволявайки на способността restrict() да реши подходящото лятно време с оглед на предварително определеното време. Най-накрая, съдържанието отпечатва последващия обект за дата и час с изрично зададения часови регион.

Преобразуване на епохата на Unix в DateTime с помощта на Python

Този процес на преобразуване на епохата на Unix в DateTime е подобен на това, което направихме по-рано. Този процес включва datetime.fromtimestamp() функция за преобразуване на епохата на Unix в обект DateTime и използва strftime() функция за трансформиране на обекта в подходящия формат DateTime.

Нека разгледаме следния пример, демонстриращ същото.

Пример:

 # Here, we are importing the datetime library import datetime # Here, we have defined a constant value for the epoch time epoch_time = 252384207 # Here, we are using the datetime.fromtimestamp() function datetime_obj = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are using the strftime() function datetime_str = datetime_obj.strftime( '%Y - %m - %d %H : %M : %S' ) # Here, we are printing the values print( 'Unix epoch time:', epoch_time ) print( 'DateTime:', datetime_str ) 

Изход:

 Unix epoch time: 252384207 DateTime: 1977 - 12 - 31 08 : 13 : 27 

Обяснение:

В горния пример модулът за дата и час се използва за промяна на дадено възрастово време, обозначено като 252384207 секунди, в по-разбираема организация. Основната цел е да се направи обект за дата и време от времето на възрастта и след това да се проектира като низ за показване. Съдържанието започва с въвеждането на модула за дата и час. След това възможността datetime.fromtimestamp() се използва за промяна на времевата възраст в обект datetime.

Следващият обект datetime, поставен в променливата datetime_obj, описва свързаните тънкости на датата и часа. След това възможността strftime() се използва за проектиране на обекта datetime като низ с определена организация. За тази ситуация посочената конфигурация е '%Y - %m - %d %H : %M : %S', адресираща година, месец, ден, час, момент и секунда.

Най-после съдържанието отпечатва както първия Unix възрастов час, така и подредения низ за дата и час. Тези прокламации на print() създават добив, показващ както грубото възрастово време, така и организирания низ за дата и час, давайки безпогрешно изображение на първия времеви печат и неговото приспособяване към човека.

Преобразуване на DateTime в време на епоха в милисекунди с помощта на Python

За да преобразуваме епохата DateTime в милисекунди, можем да използваме strptime() функция за връщане на обекта datetime от посочения низ и използване на клеймо за време () функция за преобразуване на обекта в секунди. Освен това трябва да умножим получената стойност по хиляда, за да произведем епохата DateTime в милисекунди.

Нека разгледаме пример, демонстриращ същото.

Пример:

 # Here, we are importing the datetime module from datetime import datetime # Here, we are using the strptime() function dt_obj = datetime.strptime( '10-6-2021 10:33:35,72', '%d-%m-%Y %H:%M:%S,%f') epoch_msec = dt_obj.timestamp() * 1000 print('epoch time in milliseconds:', epoch_msec) 

Изход:

 epoch time in milliseconds: 1623301415720.0 

Обяснение:

В горния пример модулът за дата и час се използва за промяна на проектиран низ, адресиращ конкретна дата и час, в стойност на възрастта, изчислена в милисекунди. Цикълът започва с използването на възможността strptime(), която анализира информационния низ „10-6-2021 10:33:35,72“ в светлината на дадения дизайн „%d-%m-%Y %H: %M:%S,%f'. Тази конфигурация показва частите от деня, месеца, годината, часа, момента, секундата и микросекундата на информационния низ.

Следващият обект datetime, поставен в променливата dt_obj, олицетворява анализираните данни за дата и час. По този начин съдържанието установява времето на възрастта чрез използване на стратегията timestamp() за обекта datetime, адресирайки количеството секунди, изминали от ерата на Unix (1 януари 1970 г., 00:00:00 UTC). Увеличавайки тази стойност с 1000 вярващи до милисекунди, давайки по-подробно изображение на времето.

Най-накрая съдържанието отпечатва определеното време на възраст в милисекунди, използвайки артикулацията print().

Преобразуване на клеймото на епохата в DateTime с помощта на Python

Можем да използваме datetime.fromtimestamp() функция за преобразуване на клеймото на епохата в DateTime. Ето един пример, показан по-долу:

Пример:

 # Here, we are importing the datetime module import datetime # Here, we have defined a constant value for epoch timestamp epoch_time = 33456871 # Here, we are using the datetime.fromtimestamp() function the_datetime = datetime.datetime.fromtimestamp( epoch_time ) # Here, we are printing the values print( 'epoch timestamp:', epoch_time ) print( 'DateTime:', the_datetime ) 

Изход:

 epoch timestamp: 33456871 DateTime: 1971-01-23 11:04:31 

Обяснение:

В горния пример модулът за дата и час се използва за промяна на дадено времево клеймо за възраст, адресирано като 33456871 секунди, в по-разумна и разбираема конфигурация. Съдържанието започва с въвеждането на модула за дата и час, който дава достъп до различни функционалности за работа с дати и часове.

Часовото клеймо на възрастта, което означава количеството секунди, които са се разгръщали от епохата на Unix (1 януари 1970 г., 00:00:00 UTC), се присвоява на променливата epoch_time в съдържанието. По този начин възможността datetime.fromtimestamp() се използва за промяна на това времево клеймо за възрастта в обект datetime, наречен the_datetime.

Съдържанието се затваря чрез отпечатване както на първото времево клеймо за възраст, така и на организирания обект за дата и час, използвайки артикулациите print().

Разбиране на грешки, свързани с епоха дата и час в Python

Докато работим с епохата дата-час в езика за програмиране Python, може да срещнем грешка, казваща, че Python епоха дата-час година е извън диапазона или невалиден аргумент на Python.

Нека разгледаме един пример, за да разберем проблема.

Пример:

 # Here, we are importing the datetime module import datetime # Here, we are using the timestamp() function epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() # Here, we are printing the values print( epoch_time ) 

Изход:

 Traceback (most recent call last): File 'D:Pythonepochpython.py', line 5, in epoch_time = datetime.datetime(1960, 6, 10, 0, 0).timestamp() OSError: [Errno 22] Invalid argument 

Обяснение:

В горния пример модулът за дата и час се използва за промяна на конкретна дата и час, за тази ситуация, „1960-06-10 00:00:00“, във възрастово време, като се използва възможността timestamp(). Съдържанието започва с въвеждането на модула за дата и час, който дава достъп до функционалности, свързани със задачи за дата и час.

оператор if-else java

Основната полезност на съдържанието се крие в използването на способността timestamp(), която се прилага към обект за дата и час, адресиращ 10 юни 1960 г. в 12:00 часа. Тази възможност отработва и връща времето за възраст, като се отнася до количеството секунди, изминали от епохата на Unix (1 януари 1970 г., 00:00:00 UTC) до предварително определената дата и час.

След това резултатът се отпечатва с помощта на прокламацията print(), създавайки резултат, който може да изглежда като „- 306691200.0“.