【发布时间】:2010-11-26 16:59:57
【问题描述】:
我有一个字符串列表:
[song_1, song_3, song_15, song_16, song_4, song_8]
我想按最后的 # 对它们进行排序,不幸的是,由于较小的数字不是“08”而是“8”,因此按字典顺序它们被视为大于 15。
我知道我必须将一个键传递给排序函数,我在这个网站的某个地方看到了这个来对作为字符串的十进制数字进行排序:
sorted(the_list, key=lambda a:map(int,a.split('.'))
但那是针对“1.2、2.5、2.3”的,但我没有这种情况。我想更换'。使用 '_' 但据我了解,它将双方都转换为 ints,这将失败,因为 _ 的左侧是一个字符串。
编辑:我忘了说所有的前缀都是一样的(本例中的歌曲)
【问题讨论】:
标签: python