Funkcia 'timedelta()' Pythonu je prítomná v knižnici datetime, ktorá sa zvyčajne používa na výpočet rozdielov v daných dátumoch. Môžeme ju použiť aj na manipuláciu s dátumami v Pythone a táto funkcia používateľom veľmi uľahčuje manipuláciu s dátumami.
Syntax:
Datetime.timedelta(days = 0, seconds = 0, microseconds = 0, milliseconds = 0, minutes = 0, hours = 0, weeks = 0) Return: Date
Pre lepšie pochopenie si ukážeme, ako používať funkciu 'datetime.timedelta()' na nasledujúcom príklade:
Príklad 1:
V tomto príklade vytlačíme budúce dátumy troch rokov a troch dní:
from datetime import datetime as D_T, timedelta as T_D # Using current time initializing_time_for_now = D_T.now() # To print initial date print ('Initial Date: ', str(initializing_time_for_now)) # For Calculating the future dates of three years Future_Date_After_THREE_yrs = initializing_time_for_now + T_D(days = 1095) # For Calculating the future dates of three days Future_Date_After_THREE_days = initializing_time_for_now + T_D(days = 2) # Now, we will print the calculated future dates print('Future Date after Three years: ', str(Future_Date_After_THREE_yrs)) print('Future Date after Three days: ', str(Future_Date_After_THREE_days))
Výkon:
príklad používateľského mena
Initial Date: 2021-10-14 00:09:43.611036 Future Date after Two years: 2023-10-15 00:09:43.611036 Future Date after Two days: 2021-10-17 00:09:43.611036
Príklad 2:
V tomto príklade uvidíme, ako môžeme vytlačiť minulé dátumy dvoch rokov a dvoch hodín:
binárny strom vs bst
from datetime import datetime as D_T, timedelta as T_D # Using current time initializing_time_for_now = D_T.now() # To print initial date print ('Initial Date:', str(initializing_time_for_now)) # For Calculating the past dates of two year Past_Date_Before_TWO_yrs = initializing_time_for_now - timedelta(days = 730) # For Calculating the past dates of two hours Past_Date_Before_TWO_hours = initializing_time_for_now - timedelta(hours = 2) # Now, we will print the calculated Past Dates print('Past date before two years: ', str(Past_Date_Before_TWO_yrs)) print('Past date before two hours: ', str(Past_Date_Before_TWO_hours))
Výkon:
Initial Date: 2021-10-14 00:19:18.449629 Past date before two years: 2019-10-15 00:19:18.449629 Past date before two hours: 2021-10-13 22:19:18.449629
Príklad 3:
V tomto príklade vypočítame rozdiel medzi dvoma rôznymi dátumami:
from datetime import datetime as D_T, timedelta as T_D # Using current time initializing_time_for_now = D_T.now() # To print initial date print ('Initial Date:', str(initializing_time_for_now)) # Some another datetime New_time = initializing_time_for_now + T_D(days = 7, hours = 6, milliseconds = 55, seconds = 12) New_time_1 = initializing_time_for_now + T_D(days = 12, hours = 64, milliseconds = 215, seconds = 90) # We will print the new time print ('New calculated time: ', str(New_time)) # Now, we will print the time difference between the two Dates: print('Time difference between the given dates is:', str(New_time - initializing_time_for_now)) print('Time difference between the initial Date and New_time_1 is:', str(New_time_1 - initializing_time_for_now))
Výkon:
Initial Date: 2021-10-14 00:31:13.920503 New calculated time: 2021-10-21 06:31:25.975503 Time difference between the given dates is: 7 days, 6:00:12.055000 Time difference between the initial Date and New_time_1 is: 14 days, 16:01:30.215000
Záver
V tomto návode sme sa dozvedeli o funkcii 'datetime.timedelta()' knižnice datetime v Pythone. Diskutovali sme aj o rôznych príkladoch na lepšie pochopenie konceptu manipulácie s dátumami a výpočtu rozdielu medzi dvoma dátumami.