这个想法还是一样。只是您将在类对象中寻找特定的属性。
对于您的卡片类,您可以执行以下操作:
hand = [ Card(10, 'H'), Card(2,'h'), Card(12,'h'), Card(13, 'h'), Card(14, 'h') ]
那你可以做
sorted_cards = sorted(hand, key=lambda x: x.rank)
输出看起来像这样:
>>> [card.number for card in sorted_cards]
[2, 10, 12, 13, 14]