Get the Day of the Week in Python

  1. Use the weekday() Method to Get the Name of the Day in Python
  2. Use the isoweekday() Method to Get the Name of the Day in Python
  3. Use the calendar Module to Get the Name of the Day in Python
  4. Use the strftime() Method to Get the Name of the Day in Python
  5. Use Pandas Timestamp Method to get the Name of the Day in Python

This tutorial introduces how to get the name of the day from a given date. There are multiple ways of getting the output, so the tutorial also describes a few different approaches to get the name of the day.

Use the weekday() Method to Get the Name of the Day in Python

In Python, weekday() can be used to retrieve the day of the week. The datetime.today() method returns the current date, and the weekday() method returns the day of the week as an integer where Monday is indexed as 0 and Sunday is 6.

An example code of this method is given below:

from datetime import datetime

print(datetime.today().weekday())

Output:

1

Use the isoweekday() Method to Get the Name of the Day in Python

The isoweekday() method works similarly to the weekday() method. This method is used when Monday is to be marked with 1 instead of 0 like in weekday().

Below is the code example.

from datetime import datetime
print(datetime.today().isoweekday())

Output:

2

The output is 2, which is equivalent to Tuesday as Monday is 1.

Use the calendar Module to Get the Name of the Day in Python

When the name of the day is required in English in Python, the calendar library can be used. It uses the day_name() method that manages an array of the days of the week. In this array, Monday is placed at the 0th index.

An example of using this method is given below:

from datetime import date
import calendar
curr_date = date.today()
print(calendar.day_name[curr_date.weekday()])

Output:

Tuesday

Use the strftime() Method to Get the Name of the Day in Python

The strftime() method can also be used to get the name of the day in English in Python. The strftime() method takes %A directive as its only parameter which returns the full name of the weekday.

An example code of this approach is as follows:

from datetime import datetime
print(datetime.today().strftime('%A'))

Output:

 Tuesday

Use Pandas Timestamp Method to get the Name of the Day in Python

Pandas Timestamp method is useful if you have the date in string format. It takes the date in YYYY-MM-DD format as its parameter, and the day_name() method returns the name of the respective day.

An example code is given below:

import pandas as pd

temp = pd.Timestamp('2020-11-25')
print(temp.dayofweek, temp.day_name())

Output:

2 Wednesday
Contribute
DelftStack is a collective effort contributed by software geeks like you. If you like the article and would like to contribute to DelftStack by writing paid articles, you can check the write for us page.

Related Article - Python DateTime

  • Python Convert Datetime to Epoch
  • Get the Current Date in Python