AppDividend
Latest Code Tutorials

How to Convert Python String to Datetime

The strptime() method is available under datetime and time modules to parse the string to datetime and time objects.

Python string to datetime

To convert string to datetime in Python, use the strptime() method. The strptime() is a built-in function of the Python datetime class used to convert a string representation of the​ date/time to a date object.

Syntax

datetime.strptime(date_string, format)

Parameters

The strptime() function takes both the arguments that are mandatory and should be a string. The strptime() function is exactly the opposite of the strftime() function, which converts a datetime object to a string.

Example

# app.py

from datetime import datetime

dt_str = '27/10/20 05:23:20'

dt_obj = datetime.strptime(dt_str, '%d/%m/%y %H:%M:%S')

print("The type of the date is now",  type(dt_obj))
print("The date is", dt_obj)

Output

The type of the date is now <class 'datetime.datetime'>
The date is 2020-10-27 05:23:20

The datetime.strptime() is a general method for parsing strings into datetimes. It can handle all sorts of formats, with the format defined by the format string you give.

Convert Python String to datetime using dateutil

The dateutil can be installed from PyPI using the pip package manager.

To convert String to datetime, import the dateutil package and use the parser module.

# app.py

from dateutil import parser

dt_str = '27/10/20 05:23:20'

dt_obj = parser.parse(dt_str)

print("The type of the date is now",  type(dt_obj))
print("The date is", dt_obj)

Output

The type of the date is now <class 'datetime.datetime'>
The date is 2020-10-27 05:23:20

Python String to date object

To convert string to date object in Python, use the date() function along with the strptime() function.

# app.py

from datetime import datetime

date_str = '10-27-2020'

dto = datetime.strptime(date_str, '%m-%d-%Y').date()
print(type(dto))
print(dto)

Output

<class 'datetime.date'>
2020-10-27

The strptime() function will not work if the string argument is not consistent with the format parameter.

Convert String to Datetime with locale

To set a locale in Python, import the locale package in your Python progrThen, The locale.setlocale() method is used to set the locale.

# app.py

import locale
from datetime import datetime

locale.setlocale(locale.LC_ALL, 'es_ES')
date_str_es = '27-Octubre-2020'  # es_ES locale
datetime_object = datetime.strptime(date_str_es, '%d-%B-%Y')
print(datetime_object)

Output

2020-10-27 00:00:00

That is it for converting a string to datetime in a Python article.

See also

Python Date Format

Python date_range()

Python to_datetime()

Python convert datetime to String

Leave A Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.