Open In App

Datetime.replace() Function in Python

Last Updated : 28 Jul, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

Datetime.replace() function is used to replace the contents of the DateTime object with the given parameters.

Syntax: Datetime_object.replace(year,month,day,hour,minute,second,microsecond,tzinfo)

Parameters:

  • year: New year value in range-[1,9999],
  • month: New month value in range-[1,12],
  • day: New day value in range-[1,31],
  • hour: New hour value in range-[24],
  • minute: New minute value in range-[60],
  • second: New second value in range-[60],
  • microsecond: New microsecond value in range-[1000000],
  • tzinfo: New time zone info.

Returns: It returns the modified datetime object

Note:

  • In the replace() we can only pass the parameter the DateTime object is already having, replacing a parameter that is not present in the DateTime object will raise an Error
  • It does not replace the original DateTime object but returns a modified DateTime object

Example 1: Replace the current date’s year with the year 2000.

Python3




# importing the datetime module
import datetime
  
# Getting current date using today()
# function of the datetime class
todays_date = datetime.date.today()
print("Original Date:", todays_date)
  
# Replacing the todays_date year with
# 2000 using replace() function
modified_date = todays_date.replace(year=2000)
print("Modified Date:", modified_date)


Output:

Original Date: 2021-07-27
Modified Date: 2000-07-27

Example 2: Replace a parameter that is not present in the datetime object.

Python3




# importing the datetime module
import datetime
  
# Getting current date using today()
# function of the datetime class
todays_date = datetime.date.today()
print("Original Date:", todays_date,)
  
# Trying to replace the todays_date hour
# with 3 using replace() function
modified_date = todays_date.replace(hour=3)
print("Modified Date:", modified_date)


Output:

Traceback (most recent call last):

 File “/home/6e1aaed34d749f5b15af6dc27ce73a2d.py”, line 9, in <module>

   modified_date = todays_date.replace(hour=3)

TypeError: ‘hour’ is an invalid keyword argument for this function

So we observe that we get an error as the hour is not present in the datetime object. Now we will create a datetime object with hour property and try to change it to 03 and we will also change the date to 10.

Python3




# importing the datetime module
import datetime
  
# Getting current date and time using now()
# function of the datetime class
todays_date = datetime.datetime.now()
print("Today's date and time:", todays_date)
  
# Replacing todays_date hour with 3 and day
# with 10 using replace() function using hour
# and day parameter
modified_date = todays_date.replace(day = 10, hour=3)
print("Modified date and time:", modified_date)


Output:

Today's date and time: 2021-07-28 09:08:47.563144
Modified date and time: 2021-07-10 03:08:47.563144


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads