【发布时间】:2014-02-12 18:42:12
【问题描述】:
我有一个卡片等级和值的字典,我想对包含 4 张卡片的列表进行排序,以便根据等级和值对卡片进行适当排序。
RANKS = ["A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"]
VALUES = [1, 2, 3, 4, 5, 6, 7, 8, 9 , 10, 10, 10, 10]
val_dict = dict(zip(RANKS, VALUES))
list = ["2","2","3","A"] # should sort to ["A",2,2,3]
list2 = ["10","K","J","Q"] # sort to [10,"J","Q","K"]
背景: 我想以这种方式对这些列表进行排序,以便计算纸币手中的跑步次数。我使用卡片的序数值来确定它们是否是连续的。 (我也可以提供该代码,如果它可能有助于重新这样做)
【问题讨论】:
-
应该
list(顺便说一句不是一个好的命名选择)是["2", "2", "3", "A"]? -
只是示例代码,不在生产环境中。是的,它们是字符串。会更新。
-
你为什么在同一个列表中混合排名和值
-
而不是价值和排名,在我看来,排名就足够了。但是,您会发现您的列表应该只包含一种类型的对象才能进行简单排序。
标签: python sorting python-3.x dictionary