【问题标题】:how to sort a list of string by every element's numeric value [duplicate]如何按每个元素的数值对字符串列表进行排序[重复]
【发布时间】:2013-12-09 12:30:38
【问题描述】:

我有一个这样的字符串列表:

a = ["part 1", "part 3" , "part 10", "part 2"....]

如果我对它们进行排序并打印,sorted[a]结果是

["part 1", "part 10", "part 2", "part 3"]

但我想将它们排序为:

["part 1", "part 2", "part 3", "part 10"]

按每个字符串中的数值。我该如何实施?谢谢

【问题讨论】:

标签: python list sorting


【解决方案1】:
a = ["part 1", "part 3" , "part 10", "part 2"]
print sorted(a, key=lambda x:int(x.split()[1]))

输出

['part 1', 'part 2', 'part 3', 'part 10']

如果你想就地排序,

a.sort(key=lambda x:int(x.split()[1]))
print a

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-12
    相关资源
    最近更新 更多