Loading lesson path
Concept visual
Start at both ends
A date in Python is not a data type of its own, but we can import a module named datetime to work with dates as date objects.
Import the datetime module and display the current date:
Formula
import datetime x = datetime.datetime.now()print(x)When we execute the code from the example above the result will be: The date contains year, month, day, hour, minute, second, and microsecond.
The datetime module has many methods to return information about the date object.Here are a few examples, you will learn more about them later in this chapter:
Return the year and name of weekday:
Formula
import datetime x = datetime.datetime.now()print(x.year)
print(x.strftime("%A"))To create a date, we can use the datetime() class (constructor) of the datetime module.
class requires three parameters to create a date: year, month, day.
Formula
import datetime x = datetime.datetime(2020, 5, 17)print(x)class also takes parameters for time and timezone (hour, minute, second, microsecond, tzone), but they are optional, and has a default value of , ( None for timezone).
The datetime object has a method for formatting date objects into readable strings. The method is called strftime(), and takes one parameter, format, to specify the format of the returned string:
Display the name of the month:
Formula
import datetime x = datetime.datetime(2018, 6, 1)print(x.strftime("%B"))A reference of all the legal format codes:
%a Weekday, short version
Try it » %A Weekday, full version
Try it » %w
Formula
Weekday as a number 0 - 6, 0 is SundayTry it » %d
Formula
Day of month 01 - 3131 Try it » %b Month name, short version
Try it » %B Month name, full version
Try it » %m
Formula
Month as a number 01 - 1212 Try it » %y Year, short version, without century 18 Try it » %Y Year, full version 2018 Try it » %H
Formula
Hour 00 - 2317 Try it » %I
Formula
Hour 00 - 1205 Try it » %p
PM Try it » %M
Formula
Minute 00 - 5941 Try it » %S
Formula
Second 00 - 5908 Try it » %f
Formula
Microsecond 000000 - 999999548513 Try it » %z
+0100 %Z
%j
Formula
Day number of year 001 - 366365 Try it » %U
Formula
Week number of year, Sunday as the first day of week, 00 - 5352 Try it » %W
Formula
Week number of year, Monday as the first day of week, 00 - 5352 Try it » %c