Computer >> Computer tutorials >  >> Programming >> Python

How to get min, seconds and milliseconds from datetime.now() in Python?


You can get the formatted date and time using strftime function. It accepts a format string that you can use to get your desired output. Following are the directives supported by it.

Directive    
Meaning
%a
Locale's abbreviated weekday name.      
%A
Locale's full weekday name.
%b
Locale's abbreviated month name.
%B
Locale's full month name.
%c
Locale's appropriate date and time representation.    
%d
 Day of the month as a decimal number [01,31].
%H
  Hour (24-hour clock) as a decimal number [00,23].    
%I
Hour (12-hour clock) as a decimal number [01,12].  
%j  
Day of the year as a decimal number [001,366].  
%m
Month as a decimal number [01,12].
%M    
Minute as a decimal number [00,59].      
%p
Locale's equivalent of either AM or PM.  
%S
 Second as a decimal number [00,61].
%U
Week number of the year (Sunday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Sunday are considered to be in week 0.
%w
 Weekday as a decimal number [0(Sunday),6].
%W
 Week number of the year (Monday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Monday are considered to be in week 0.
%x
Locale's appropriate date representation.    
%X  
Locale's appropriate time representation.
%y
Year without century as a decimal number [00,99].  
%Y
Year with century as a decimal number.      
%Z  
Time zone name (no characters if no time zone exists).  
%%  
A literal "%" character.

        

Example

In this case, you can use these directives in the strftime function as follows −

from datetime import datetime
curr_time = datetime.now()
formatted_time = curr_time.strftime('%M:%S.%f')
print(formatted_time)

Output

This will give the output −

31:15.093393