The idea is still the same. Just that you will be looking for a specific attribute in the class object.
For your card class, you could do something like this:
hand = [ Card(10, 'H'), Card(2,'h'), Card(12,'h'), Card(13, 'h'), Card(14, 'h') ]
Then you could do
sorted_cards = sorted(hand, key=lambda x: x.rank)
The output looks something like this:
>>> [card.number for card in sorted_cards]
[2, 10, 12, 13, 14]