In this article, you will learn to create a datetime object from a string (with the help of examples).
The strptime() method creates a datetimearrow-up-right object from the given string.
Note: You cannot create datetime object from every string. The string needs to be in a certain format.
Example 1: string to datetime object
Copy
from datetime import datetime
date_string = "21 June, 2018"
print("date_string =", date_string)
print("type of date_string =", type(date_string))
date_object = datetime.strptime(date_string, "%d %B, %Y")
print("date_object =", date_object)
print("type of date_object =", type(date_object)) When you run the program, the output will be:
Copy
date_string = 21 June, 2018
type of date_string = <class 'str'>
date_object = 2018-06-21 00:00:00
type of date_object = <class 'datetime.datetime'> How strptime() works?
The strptime() class method takes two arguments:
string (that be converted to datetime)
Based on the string and format code used, the method returns its equivalent datetime object.
In the above example:
How strptime() works in Python? Here,
%d - Represents the day of the month. Example: 01, 02, ..., 31
%B - Month's name in full. Example: January, February etc.
%Y - Year in four digits. Example: 2018, 2019 etc.
Example 2: string to datetime object
When you run the program, the output will be:
The table below shows all the format codes that you can use.
ValueError in strptime()
If the string (first argument) and the format code (second argument) passed to the strptime() doesn't match, you will get ValueError. For example:
If you run this program, you will get an error.