Python | Convert string to DateTime and vice-versa
Write a Python program to convert a given string to DateTime in Python.
Below are the methods that we will cover in this article:
- Using datetime module
- Using time module
- Using dateutil module
Method 1: Program to convert string to DateTime using datetime.strptime() function.
strptime() is available in DateTime and time modules and is used for Date-Time Conversion. This function changes the given string of datetime into the desired format.
Examples:
Input : Dec 4 2018 10:07AM Output : 2018-12-04 10:07:00 Input : Jun 12 2013 5:30PM Output : 2013-06-12 17:30:00
Syntax of strptime function
datetime.strptime(date_string, format)
The arguments date_string and format should be of string type.
Python3
import datetime # Function to convert string to datetime def convert(date_time): format = '%b %d %Y %I:%M%p' # The format datetime_str = datetime.datetime.strptime(date_time, format ) return datetime_str # Driver code date_time = 'Dec 4 2018 10:07AM' print (convert(date_time)) |
Output:
2018-12-04 10:07:00
Time Complexity: O(1)
Auxiliary Space: O(1)
Method 2: Program to convert DateTime to string using time.strftime
Python strftime() function is present in datetime and time modules to create a string representation based on the specified format string.
Examples:
Input : 2018-12-04 10:07:00 Output : Dec 4 2018 10:07:00AM Input : 2013-06-12 17:30:00Jun 12 2013 5:30PM Output : Jun 12 2013 5:30:00PM
Syntax of strftime function
datetime_object.strftime(format_str)
Time Complexity: O(1)
Auxiliary Space: O(1)
Another similar function is available in time module which converts a tuple or struct_time object to a string as specified by the format argument.
Python3
import time # Function to convert string to datetime def convert(datetime_str): datetime_str = time.mktime(datetime_str) format = " % b % d % Y % r" # The format dateTime = time.strftime( format , time.gmtime(datetime_str)) return dateTime # Driver code date_time = ( 2018 , 12 , 4 , 10 , 7 , 00 , 1 , 48 , 0 ) print (convert(date_time)) |
Output:
Dec 04 2018 10:07:00 AM
Time Complexity: O(1)
Auxiliary Space: O(1)
Method 3: Program to convert DateTime to string using dateutil module
The dateutil is a third-party module. The parsing of dates in any string format is supported by the dateutil module. Internal facts about current world time zones are provided by this module. With the release of dateutil 2.0, it was recently adapted to Python 3, along with the parser functions. parse() can be used to convert a string into date-time format. The only parameter used is the string.
Syntax of dateutil.parser.parse function
parser.parse(parserinfo=None, **kwargs)
Python3
from dateutil import parser DT = parser.parse( "Jun 23 2022 07:31PM" ) print (DT) print ( type (DT)) |
Output:
2022-06-23 19:31:00 <class 'datetime.datetime'>
Time Complexity: O(1)
Auxiliary Space: O(1)
Example in python:
Approach:
Import the datetime module.
Create a datetime object with the desired date and time.
Define a format string that specifies how the datetime object should be formatted as a string.
Use the strftime() method of the datetime object to convert it to a string in the specified format. The strftime() method takes the format string as its argument.
Print the resulting string.
Python3
import datetime # Create a datetime object datetime_object = datetime.datetime( 2022 , 3 , 14 , 15 , 30 , 0 ) # Define a format string format_string = '%Y-%m-%d %H:%M:%S' # Convert the datetime object to a string in the specified format date_string = datetime_object.strftime(format_string) # Print the resulting string print (date_string) |
2022-03-14 15:30:00
The time complexity of this code is O(1), which means it takes a constant amount of time to execute regardless of the size of the input.
The auxiliary space of this code is also O(1), as it only stores a fixed number of variables regardless of the size of the input.
Please Login to comment...