Explain the difference between a list and a tuple in Python, and provide a scenario where you might prefer to use one over the other.