After DDGing a bit it seems like you have a point. I did not know about that semantic difference between tuples and lists in python. It seems like this difference is entirely about the meaning conveyed to a human reader, rather than any technical difference. My guess would be that tuples are generally more efficient, but I have no actual data to back that up with.
default_reasons doesn't need to be a dict. Use a list.
You don't need random.randrange(). Use random.randint() to select a random integer and random.choice() to select a reason from default_reasons.