How to convert DateTime to string in Python

Python Python-DateTime

In this post, we are going to learn how to convert DateTime to string in Python using different code examples. To get the date in a different format in Python we use strftime(),format() functions and f-string.We will learn about all these functions in this post.

Python Strftime() Function


The datetime class has a member function strftime().The strftime() function of the datatime class takes two arguments in which the first argument is the string representation of datetime and second is the format of input string.

Syntax

datetime.strftime(Format_String)

Steps to convert DateTime to string in Python


  • We need to import datetime module in our program and after that we can use the strftime() and format() functions to convert a datetime object to string in Python.
  • We can choose datetime to string formats as per our requirement by using format codes given in below table at the end of this article.

1. Convert DateTime to string using strftime()


In this example, we are converting datetime to string in the format of DD-MMM-YYYY HH:MM:SS using the strftime() function.

Program Example

from datetime import datetime

dt_obj = datetime.now()


date_to_str = dt_obj.strftime("%A %d-%b-%Y %H:%M:%S")
print('datetime to string : ', date_to_str )


# date in YY/mm/dd
date_format = dt_obj.strftime("%y/%m/%d")
print("yy/mm/dd  format :", date_format )


Output

datetime to string :  Tuesday 20-Jul-2021 20:17:37
yy/mm/dd  format : 21/07/20

2. How to Convert dateTime to Text


In this example, we are converting the datetime to text format using the strftime() function.

Program Example

from datetime import datetime

dt_obj = datetime.now()



dt_to_text  = dt_obj.strftime("All are informed that\n %A %d %B %Y is board metting at : %I:%M %p")

print(time_to_Str )

Output

 All are informed that
 Wednesday 21 July 2021 is board metting at : 12:33 AM

3. Convert Python date to string


Sometime instead of datetime we need to convert only Python date to string in different formats. In this example we are converting Python date only to differnt string formats.

Program Example

from datetime import datetime

dt_obj = datetime.now()

#Date Month Year
Date_to_str = dt_obj.strftime("%d %b, %Y")
print("dd/mm/year:", Date_to_str)


#Full Textual month name, day and year	
Dt_st_Frmt =  dt_obj.strftime("%B %d, %Y")
print("month name/day/year :", Dt_st_Frmt)


#mm/dd/yyyy
dt_frt = dt_obj.strftime("%m/%d/%Y")
print("mm/dd/yyyy:",dt_frt )





Output

dd/mm/year: 20 Jul, 2021

month name/day/year : July 20, 2021

mm/dd/yyyy: 07/20/2021

4. Convert Python Time to string


Sometime we need to convert Python time into different string format as we are doing in this below example.

Program Example

from datetime import datetime

dt_obj = datetime.now()

time_to_Str = dt_obj.strftime("%H:%M:%S.%f")

print("hh:mm:ss:ms =",time_to_Str )

Output

hh:mm:ss:ms = 20:53:36.388952

5. Using format() function


The format() function can be used to convert datetime to different string format. It is provided with curly brackets followed by colon mark.

Program example

from datetime import datetime

dt_obj = datetime.now()


 
 
 
print('Day/mm/dd/yyyy :  ', '{:%a, %B %d %Y}'.format(dt_obj))
 
 
 
print('mm/dd/yyyy :     ', '{:%m/%d/%Y}'.format(dt_obj))
 

 
 
print('mm/dd/yy hh:mm:ss : ','{:%m/%d/%y %H:%M %S}'.format(dt_obj))
 
  
print('mm/dd/yy hh:mm:ss:ms : ' ,'{:%m/%d/%y %I:%M %S %f}'.format(dt_obj))
 

Output

Day/mm/dd/yyyy :   Wed, July 21 2021
mm/dd/yyyy :      07/21/2021
mm/dd/yy hh:mm:ss :  07/21/21 09:05 08
mm/dd/yy hh:mm:ss:ms :  07/21/21 09:05 08 993077

6.Using f-string


By using f-string, the datetime can be converted into different string formats. The f-string is evaluated at run-time. We can use any valid Python expression in them.

from datetime import datetime

dt_obj = datetime.now()





dt_to_str = f'The date to string is mm/dd/yyyy :         {dt_obj:%b %d, %Y}'
dt_to_str1 = f'The date to string mm/dd/yy hh:mm:ss:ms:  {dt_obj:%m/%d/%y %H:%M %S}'
 
 
print(dt_to_str)
print(dt_to_str1)

Output

The date to string is mm/dd/yyyy :         Jul 21, 2021
The date to string mm/dd/yy hh:mm:ss:ms:  07/21/21 17:36 32

Table of DateTime format code in Python


These are list of format code available in Python as per python docs

Format codesDescriptionExample
%aWeekday as the abbreviated nameSun, Mon, …, Sat
%AWeekday as locale’s full nameSunday,…Saturday
%wWeekday as a decimal number, 0 is Sunday,6 is Saturday.0, 1, …, 6
%dDay of the month as a zero-padded decimal number.01, 02, …, 31
%bMonth as locale’s abbreviated name.Jan, Feb, …, Dec
%mMonth as a zero-padded decimal number.01, 02, …, 12
%BMonth as locale’s full name.January, February,..
%yYear without century00, 01, …, 99
%YYear with century0001, 0002, …, 9998, 9999
%HHour (24-hour clock) as a zero-padded decimal number.00, 01, …, 23
%IHour (12-hour clock) as a zero-padded decimal number.01, 02, …, 12
%pLocale’s equivalent of either AM or PM.AM, PM
%MMinute as a zero-padded decimal number.00, 01, …, 59
%sThe second is a zero-padded decimal number.00, 01, …, 59
%fMicrosecond as a decimal number, zero-padded on the left.000000, 000001, …, 999999

Summary

In this post, we have learned different ways of How to convert DateTime to string in Python with code example by Using strftime(), format() functions. We can change the datetime to string format as per our requirment using any of both methods by passing format code as given in above table.