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 DateTime class takes two arguments in which the first argument is the string representation of datetime and the second is the format of the 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. How how to convert DateTime to string in Python 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
- 6 ways to get current Timestamp in Python
- How to convert DateTime to string in Python
- How to convert string to datetime in Python
- Unix Timestamp to datetime in Python
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
nknnm
4. Convert Python Time to string
Sometimes we need to convert Python time into different string formats as we are doing in the 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 formats. It is provided with curly brackets followed by a 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. How to convert DateTime to string in Python sing 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 codes | Description | Example |
---|---|---|
%a | Weekday as the abbreviated name | Sun, Mon, …, Sat |
%A | Weekday as locale’s full name | Sunday,…Saturday |
%w | Weekday as a decimal number, 0 is Sunday,6 is Saturday. | 0, 1, …, 6 |
%d | Day of the month as a zero-padded decimal number. | 01, 02, …, 31 |
%b | Month as locale’s abbreviated name. | Jan, Feb, …, Dec |
%m | Month as a zero-padded decimal number. | 01, 02, …, 12 |
%B | Month as locale’s full name. | January, February,.. |
%y | Year without century | 00, 01, …, 99 |
%Y | Year with century | 0001, 0002, …, 9998, 9999 |
%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 |
%p | Locale’s equivalent of either AM or PM. | AM, PM |
%M | Minute as a zero-padded decimal number. | 00, 01, …, 59 |
%s | The second is a zero-padded decimal number. | 00, 01, …, 59 |
%f | Microsecond 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.