Get Day name from Weekday int

I have a weekday integer (0,1,2...) and I need to get the day name ('Monday', 'Tuesday',...).

Is there a built in Python function or way of doing this?

Here is the function I wrote, which works but I wanted something from the built in datetime lib.

    def dayNameFromWeekday(weekday):
        if weekday == 0:
            return "Monday"
        if weekday == 1:
            return "Tuesday"
        if weekday == 2:
            return "Wednesday"
        if weekday == 3:
            return "Thursday"
        if weekday == 4:
            return "Friday"
        if weekday == 5:
            return "Saturday"
        if weekday == 6:
            return "Sunday"

It is more Pythonic to use the calendar module:

    >>> import calendar
    >>> list(calendar.day_name)
    ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']

Or, you can use common day name abbreviations:

    >>> list(calendar.day_abbr)
    ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']

Then index as you wish:

    >>> calendar.day_name[1]
    'Tuesday'

(If Monday is not the first day of the week, use setfirstweekday to change it)

Using the calendar module has the advantage of being location aware:

    >>> import locale
    >>> locale.setlocale(locale.LC_ALL, 'de_DE')
    'de_DE'
    >>> list(calendar.day_name)
    ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag']

From: stackoverflow.com/q/36341484