<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def top_cards(self, number=1, cache=True, remove=True):
 """ Retrieve the top number of cards as ``Librarian.Card`` objects in a list in order of top to bottom most card. Uses the decks ``.get_card`` and passes along the cache and remove arguments. """

        getter = partial(self.get_card(cache=cache, remove=remove))
        return [getter(index=i) for i in range(number)]