Python | funkcija datetime.timedelta().

Python timedelta() funkcija je prisotna pod knjižnica datuma in časa ki se običajno uporablja za izračun razlik v datumih in se lahko uporablja tudi za manipulacije datumov v Pythonu. To je eden najlažjih načinov za izvajanje manipulacij z datumi.

Sintaksa: datetime.timedelta(dni=0, sekund=0, mikrosekunde=0, milisekunde=0, minute=0, ure=0, tedni=0)
Vrne: Datum

Koda #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))>

Izhod:

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 

Koda #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))>

Izhod:

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 

Koda #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))>

Izhod:

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 

Odštevanje objekta timedelta od predmeta datuma ali datuma in časa:

Pristop:

Ustvarite objekt timedelta z želeno časovno razliko.
Odštejte objekt timedelta od objekta datuma ali datuma in časa z uporabo operatorja –.

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)>

Izhod

Today: 2023-03-24 Three days ago: 2023-03-21 

Časovna zapletenost : O(1)
Pomožni prostor: O(1)