Home › Interview Questions › What is causing the TypeError 'reversed' is an inv…

What is causing the TypeError 'reversed' is an invalid keyword argument for sort() in this code?

🟡 Medium Debugging Junior level
1Times asked
Sep 2026Last seen
Sep 2026First seen

💡 Model Answer

The error occurs because the built‑in sorted() function does not accept a keyword argument named "reversed"; it expects "reverse". The list method sort() also uses "reverse" as its keyword. In the snippet you passed "reversed=True", which is not a valid parameter, so Python raises a TypeError. To fix the code, replace the call with either sorted(num, reverse=True) or num.sort(reverse=True). Note that sorted() returns a new list, so you don’t need to call sort() on the original list. A corrected version would be:

python
def second_largest(num):
    return sorted(num, reverse=True)[1]

If you want to handle duplicate values and return the second distinct largest number, you can convert the list to a set first or keep track of two largest values while iterating. The key point is to use "reverse=True" instead of "reversed".

This answer was generated by AI for study purposes. Use it as a starting point — personalize it with your own experience.

🎤 Get questions like this answered in real-time

Assisting AI listens to your interview, captures questions live, and gives you instant AI-powered answers on a discreet on-screen overlay.

Get Assisting AI — Starts at ₹500