Python Datetime
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.
Example
Import the datetime module and display the current date:
import datetime
x = datetime.datetime.now[]
print[x]
Try it Yourself »
Date Output
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:
Example
Return the year and name of weekday:
import datetime
x = datetime.datetime.now[]
print[x.year]
print[x.strftime["%A"]]
Try it Yourself »
Creating Date Objects
To create a date, we can use the datetime[]
class [constructor] of the datetime
module.
The datetime[]
class requires three parameters to create a date: year, month, day.
Example
Create a date object:
import datetime
x = datetime.datetime[2020, 5, 17]
print[x]
Try it Yourself »
The datetime[]
class also takes parameters for time and timezone [hour, minute, second, microsecond, tzone], but they are optional, and has a default value of 0
, [None
for timezone].
The strftime[] Method
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:
Example
Display the name of the month:
import datetime
x = datetime.datetime[2018, 6, 1]
print[x.strftime["%B"]]
Try it Yourself »
A reference of all the legal format codes:
%a | Weekday, short version | Wed | Try it » |
%A | Weekday, full version | Wednesday | Try it » |
%w | Weekday as a number 0-6, 0 is Sunday | 3 | Try it » |
%d | Day of month 01-31 | 31 | Try it » |
%b | Month name, short version | Dec | Try it » |
%B | Month name, full version | December | Try it » |
%m | Month as a number 01-12 | 12 | Try it » |
%y | Year, short version, without century | 18 | Try it » |
%Y | Year, full version | 2018 | Try it » |
%H | Hour 00-23 | 17 | Try it » |
%I | Hour 00-12 | 05 | Try it » |
%p | AM/PM | PM | Try it » |
%M | Minute 00-59 | 41 | Try it » |
%S | Second 00-59 | 08 | Try it » |
%f | Microsecond 000000-999999 | 548513 | Try it » |
%z | UTC offset | +0100 | |
%Z | Timezone | CST | |
%j | Day number of year 001-366 | 365 | Try it » |
%U | Week number of year, Sunday as the first day of week, 00-53 | 52 | Try it » |
%W | Week number of year, Monday as the first day of week, 00-53 | 52 | Try it » |
%c | Local version of date and time | Mon Dec 31 17:41:00 2018 | Try it » |
%C | Century | 20 | Try it » |
%x | Local version of date | 12/31/18 | Try it » |
%X | Local version of time | 17:41:00 | Try it » |
%% | A % character | % | Try it » |
%G | ISO 8601 year | 2018 | Try it » |
%u | ISO 8601 weekday [1-7] | 1 | Try it » |
%V | ISO 8601 weeknumber [01-53] | 01 | Try it » |
In this article, we show how to create a date object in Python.
In Python, there is a datetime module which can create dates and times.
In this article, we will show how to create a date object, specifically, not a time object.
We can create any date using the datetime.date[] function.
Let's have a date, June 15,1987.
In the following code below, we show how to create a date object on the date, June 15,1987.
So let's now go over this code.
So the first thing we have to do is import the datetime module. The datetime module allows us to create date objects in Python.
We then create a variable, mybirthday. We set this equal to, datetime.date[1987, 6,15]
In order to create a date object with the datetime module, we pass into the datetime.date[] function 3 parameters. The first 3 parameters are datetime.date[year,month,day].
We then call the mybirthday variable and this returns, date.date[1987,6,15]
We then call the type[] function on the mybirthday variable. When we do this, this returns the output,
Then, if we want, we can get the year, month, or day of the date using the year, month, and day attributes.
So datetime objects are important in Python because we can extract and break down dates easiers. We can get the year. We can get the month. We can get the day. With regular strings, we could extract these things, but it would be a lot more difficult than if we simply used a date object, as we can with the datetime module in Python.
Related Resources