Convert string to datetime in Python with timezone
Last Updated :
29 Nov, 2022
Prerequisite: Datetime module
In this article, we will learn how to get datetime object from time string using Python.
To convert a time string into datetime object, datetime.strptime() function of datetime module is used. This function returns datetime object.
Syntax : datetime.strptime(date_string, format)
Parameters :
- date_string : Specified time string containing of which datetime object is required. **Required
- format : Abbreviation format of date_string
Returns : Returns the datetime object of given date_string
List of the acceptable format that can be passed to strptime():
Directive |
Meaning |
Output Format |
%Y |
Year in four digits |
2018, 2019 etc |
%m |
Month as a zero-padded decimal number. |
01, 02, …, 12 |
%b |
Month as locale’s abbreviated name. |
Jan, Feb, …, Dec |
%d |
Day of the month as a zero-padded decimal number. |
01, 02, …, 31 |
%H |
Hour (24-hour clock) as a zero-padded decimal number. |
00, 01, …, 23 |
%I |
Hour (12-hour clock) as a zero-padded decimal number. |
01, 02, …, 12 |
%M |
Minute as a zero-padded decimal number. |
00, 01, …, 59 |
%S |
Second as a zero-padded decimal number. |
00, 01, …, 59 |
%f |
Microsecond as a decimal number, zero-padded on the left. |
000000, 000001, …, 999999 |
%p |
Locale’s equivalent of either AM or PM |
AM, PM, am, pm |
%z |
UTC offset in the form ±HHMM |
+0000, -0400, +0530 |
%a |
Abbreviated weekday name. |
Sun, Mon, … |
Example 1: Converting datetime string to datetime
Python3
import datetime
date_string = '2021-09-01 15:27:05.004573 +0530'
print ( "string datetime: " )
print (date_string)
print ( "datestring class is :" , type (date_string))
datetime_obj = datetime.datetime.strptime(
date_string, '%Y-%m-%d %H:%M:%S.%f %z' )
print ( "converted to datetime:" )
print (datetime_obj)
print ( "datetime_obj class is :" , type (datetime_obj))
|
Output:
string datetime:
2021-09-01 15:27:05.004573 +0530
datestring class is : <class 'str'>
converted to datetime:
2021-09-01 15:27:05.004573+05:30
datetime_obj class is : <class 'datetime.datetime'>
Example 2: Converting datetime string to datetime
Python3
import datetime
date_string = '2021-09-01 15:27:05'
datetime_obj = datetime.datetime.strptime(date_string, '%Y-%m-%d %H:%M:%S' )
print (datetime_obj)
|
Output:
2021-09-01 15:27:05
In this example, microseconds and time zone parts are removed from first example, so we need to remove microseconds and time zone abbreviations also from format string
Example 3: Converting datetime string to datetime
Python3
import datetime
date_string = 'Sep 01 2021 03:27:05 PM'
datetime_obj = datetime.datetime.strptime(date_string, '%b %d %Y %I:%M:%S %p' )
print (datetime_obj)
|
Output:
2021-09-01 15:27:05
Please Login to comment...