Example 1: string to date python
import datetime
date_time_str = '2018-06-29 08:15:27.243860'
date_time_obj = datetime.datetime.strptime(date_time_str, '%Y-%m-%d %H:%M:%S.%f')
print('Date:', date_time_obj.date())
print('Time:', date_time_obj.time())
print('Date-time:', date_time_obj)
Example 2: python datetime string
import datetime
today = datetime.datetime.now()
date_time = today.strftime("%m/%d/%Y, %H:%M:%S")
print("date and time:",date_time)
Example 3: datetime to string python
from datetime import datetime
now = datetime.now()
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)
-------------------------------------------------------------------------
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). All days in a new year preceding the first Sunday are considered to be in week 0. 00, 01, ..., 53
%W Week number of the year (Monday as the first day of the week). All days in a new year preceding the first Monday are considered to be in week 0. 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 4: 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()
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 5: 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 6: python string to datetime
from datetime import datetime
datetime_object = datetime.strptime('Jun 1 2005 1:33PM', '%b %d %Y %I:%M%p')