format datetime.datetime as string code example

Example 1: python time format

The program below converts a datetime object containing current date and time to different string formats.

Code:
  
from datetime import datetime

now = datetime.now() # current date and time

year = now.strftime("%Y")
print("year:", year)

month = now.strftime("%m")
print("month:", month)

day = now.strftime("%d")
print("day:", day)

time = now.strftime("%H:%M:%S")
print("time:", time)

date_time = now.strftime("%m/%d/%Y, %H:%M:%S")
print("date and time:",date_time)	

Output after run the code:
year: 2020
month: 03
day: 31
time: 04:59:31
date and time: 03/31/2020, 04:59:31
      
Here, year, day, time and date_time are strings, whereas now is a datetime object.

Example 2: format time python

| Directive | Meaning                                                        | Example                 | 
|-----------|------------------------------------------------------------------------------------------|
|%a         | Abbreviated weekday name.                                      | Sun, Mon, ..            | 
|%A         | Full weekday name.                                             | Sunday, Monday, ...     | 
|%w         | Weekday as a decimal number.                                   | 0, 1, ..., 6            | 
|%d         | Day of the month as a zero-padded decimal.                     | 01, 02, ..., 31         | 
|%-d        | Day of the month as a decimal number.                          | 1, 2, ..., 30           | 
|%b         | Abbreviated month name.                                        | Jan, Feb, ..., Dec      | 
|%B         | Full month name.                                               | January, February, ...  | 
|%m         | Month as a zero-padded decimal number.                         | 01, 02, ..., 12         | 
|%-m        | Month as a decimal number.                                     | 1, 2, ..., 12           | 
|%y         | Year without century as a zero-padded decimal number.          | 00, 01, ..., 99         | 
|%-y        | Year without century as a decimal number.                      | 0, 1, ..., 99           | 
|%Y         | Year with century as a decimal number.                         | 2013, 2019 etc.         | 
|%H         | Hour (24-hour clock) as a zero-padded decimal number.          | 00, 01, ..., 23         | 
|%-H        | Hour (24-hour clock) as a decimal number.                      | 0, 1, ..., 23           | 
|%I         | Hour (12-hour clock) as a zero-padded decimal number.          | 01, 02, ..., 12         | 
|%-I        | Hour (12-hour clock) as a decimal number.                      | 1, 2, ... 12            | 
|%p         | Locale’s AM or PM.                                             | AM, PM                  | 
|%M         | Minute as a zero-padded decimal number.                        | 00, 01, ..., 59         | 
|%-M        | Minute as a decimal number.                                    | 0, 1, ..., 59           | 
|%S         | Second as a zero-padded decimal number.                        | 00, 01, ..., 59         | 
|%-S        | Second as a decimal number.                                    | 0, 1, ..., 59           | 
|%f         | Microsecond as a decimal number, zero-padded on the left.      | 000000 - 999999         | 
|%z         | UTC offset in the form +HHMM or -HHMM.                         |                         | 
|%Z         | Time zone name.                                                |                         | 
|%j         | Day of the year as a zero-padded decimal number.               | 001, 002, ..., 366      | 
|%-j        | Day of the year as a decimal number. 1, 2, ..., 366            |                         | 
|%U         | Week number of the year (Sunday as the first day of the week). | 00, 01, ..., 53         | 
|%W         | Week number of the year (Monday as the first day of the week). | 00, 01, ..., 53         | 
|%c         | Locale’s appropriate date and time representation.             | Mon Sep 30 07:06:05 2013|
|%x         | Locale’s appropriate date representation.                      | 09/30/13                | 
|%X         | Locale’s appropriate time representation.                      | 07:06:05                | 
|%%         | A literal '%' character.                                       | %                       |

Example 3: python from timestamp to string

from datetime import datetime

timestamp = 1545730073
dt_object = datetime.fromtimestamp(timestamp)

print("dt_object =", dt_object)
print("type(dt_object) =", type(dt_object))

# Output

dt_object = "2018-12-25 09:27:53"
type(dt_object) = <class 'datetime.datetime'>

Example 4: convert string date to datetime and format

var dateString = "2020-09-25T10:13:21.246321+01:00";
String formattedDateString = DateFormat('do LLLL yyyy').format(DateTime.parse(dateString)); 
// formattedDateString - OUTPUT: "25 September 2020"