Answer: Python Puzzler #1176

The answer is C. The program prints:

[46, 40, 34, 12, 5, 2]
What the program prints
Checked by running the program for real.

Why?

sort() puts the list in order, smallest first. reverse=True flips it, so the biggest comes first. It changes the list itself.

The code again

scores = [12, 34, 46, 2, 5, 40]
scores.sort(reverse=True)
print(scores)

Try it: change one number in the program and predict the new output before you run it.