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?
H
You could use a list which you get an item from based on your argument:
def dayNameFromWeekday(weekday):
days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
return days[weekday]
If you needed the function to not cause an error if you passed in an invalid number, for example "8", you could check if that item of the list exists before you return it:
def dayNameFromWeekday(weekday):
days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
return days[weekday] if 0 < weekday < len(days) else None
This function can be used like you'd expect:
>>> dayNameFromWeekday(6)
Sunday
>>> print(dayNameFromWeekday(7))
None
I'm not sure there's a way to do this built into datetime, but this is still a very efficient way.