Python | функція datetime.timedelta().
Python timedelta() функція присутня під бібліотека дати і часу який зазвичай використовується для обчислення різниць у датах, а також може використовуватися для маніпуляцій з датами в Python. Це один із найпростіших способів маніпуляції з датою.
Синтаксис: datetime.timedelta(днів=0, секунд=0, мікросекунд=0, мілісекунд=0, хвилин=0, годин=0, тижнів=0)
Повернення: Дата
Код №1:
Python3
# Timedelta function demonstration> from> datetime> import> datetime, timedelta> # Using current time> ini_time_for_now> => datetime.now()> # printing initial_date> print> ('initial_date',> str> (ini_time_for_now))> # Calculating future dates> # for two years> future_date_after_2yrs> => ini_time_for_now> +> > > timedelta(days> => 730> )> future_date_after_2days> => ini_time_for_now> +> > > timedelta(days> => 2> )> # printing calculated future_dates> print> (> 'future_date_after_2yrs:'> ,> str> (future_date_after_2yrs))> print> (> 'future_date_after_2days:'> ,> str> (future_date_after_2days))> |
Вихід:
initial_date 2019-02-27 12:41:45.018389 future_date_after_2yrs: 2021-02-26 12:41:45.018389 future_date_after_2days: 2019-03-01 12:41:45.018389
Код №2:
Python3
# Timedelta function demonstration> from> datetime> import> datetime, timedelta> # Using current time> ini_time_for_now> => datetime.now()> # printing initial_date> print> (> 'initial_date:'> ,> str> (ini_time_for_now))> # Calculating past dates> # for two years> past_date_before_2yrs> => ini_time_for_now> -> > > timedelta(days> => 730> )> # for two hours> past_date_before_2hours> => ini_time_for_now> -> > > timedelta(hours> => 2> )> # printing calculated past_dates> print> (> 'past_date_before_2yrs:'> ,> str> (past_date_before_2yrs))> print> (> 'past_date_before_2hours:'> ,> str> (past_date_before_2hours))> |
Вихід:
initial_date 2019-02-27 12:41:46.104662 past_date_before_2yrs: 2017-02-27 12:41:46.104662 past_date_after_2days: 2019-02-27 10:41:46.104662
Код №3:
Python3
# Timedelta function demonstration> from> datetime> import> datetime, timedelta> # Using current time> ini_time_for_now> => datetime.now()> # printing initial_date> print> ('initial_date',> str> (ini_time_for_now))> # Some another datetime> new_final_time> => ini_time_for_now> +> > > timedelta(days> => 2> )> # printing new final_date> print> ('new_final_time',> str> (new_final_time))> # printing calculated past_dates> print> (> 'Time difference:'> ,> str> (new_final_time> -> > > ini_time_for_now))> |
Вихід:
initial_date 2019-02-27 12:41:47.386595 new_final_time 2019-03-01 12:41:47.386595 Time difference: 2 days, 0:00:00
Віднімання об’єкта timedelta від об’єкта date або datetime:
Підхід:
Створіть об’єкт timedelta з бажаною різницею в часі.
Відніміть об’єкт timedelta від об’єкта date або datetime за допомогою оператора –.
Python3
import> datetime> today> => datetime.date.today()> three_days_ago> => today> -> datetime.timedelta(days> => 3> )> print> (> 'Today:'> , today)> print> (> 'Three days ago:'> , three_days_ago)> |
Вихід
Today: 2023-03-24 Three days ago: 2023-03-21
Часова складність : O(1)
Допоміжний простір: О(1)