Python Datetime
Python Dates
A Python date isn't a data type of itself, but a module named datetime is available for import for dates as date objects.
Example :- Import module datetime and show current date :
import datetime
x = datetime.datetime.now()
print(x)
Output :-
Date includes year, month, day, hour, minute, second and microsecond.
The datetime module contains various methods for returning date object information.
Example :- year and weekday name and returned :
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
Output :-
Monday
Creating Date Objects
We can use the datetime() class (builder) of the datatime module to produce a date.
The datetime() class needs a date with 3 parameters : year, month, day.
Example :- Create a date object :
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)
Output :-
The datetime() class requires time and timezone (time, minute, second, microsecond, tzone), however it is optional with a default 0. (None for timezone).
Related Links
The strftime() Method
The datetime object has a formatted date objects method in readable strings.
The method is called strftime() and requires one parameter, format, to indicate the format of the string returned :
Example :- Display the name of the month :
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
Output :-
All the legal format codes are referred to :
| Directive | Description | Example |
|---|---|---|
| %a | Weekday, short version | Wed |
| %A | Weekday, full version | Wednesday |
| %w | Weekday as a number 0-6, 0 is Sunday | 3 |
| %d | Day of month 01-31 | 31 |
| %b | Month name, short version | Dec |
| %B | Month name, full version | December |
| %m | Month as a number 01-12 | 12 |
| %y | Year, short version, without century | 18 |
| %Y | Year, full version | 2018 |
| %H | Hour 00-23 | 17 |
| %I | Hour 00-12 | 05 |
| %p | AM/PM | PM |
| %M | Minute 00-59 | 41 |
| %S | Second 00-59 | 08 |
| %f | Microsecond 000000-999999 | 548513 |
| %z | UTC offset | +0100 |
| %Z | Timezone | CST |
| %j | Day number of year 001-366 | 365 |
| %U | Week number of year, Sunday as the first day of week, 00-53 | 52 |
| %W | Week number of year, Monday as the first day of week, 00-53 | 52 |
| %c | Local version of date and time | Mon Dec 31 17:41:00 2018 |
| %x | Local version of date | 12/31/18 |
| %X | Local version of time | 17:41:00 |
| %% | A % character | % |
| %G | ISO 8601 year | 2018 |
| %u | ISO 8601 weekday(1-7) | 1 |
| %V | ISO 8601 weeknumber (01-53) | 01 |
Related Links