ну по сути этот класс создаёт вызываемый объект, который при вызове вернёт нужный элемент по ключу, что передан в itemgetter.
lambda item: item[key]
itemgetter(key)
вот эти две записи означают одно и тоже, itemgetter вернёт то, что написано строчкой выше