【发布时间】:2018-10-12 19:04:03
【问题描述】:
我有一个包含元素的列表:
['16:11:40.894 0,Type=IsXover,Count=1,lp-isD=2'
'16:11:40.894 0,Type=IsXover,Count=54,lp-xsD=1'
'16:11:40.894 0,Type=IsXover,Count=201,lr-isD=3'
'16:11:40.894 0,Type=IsXover,Count=3075,lp-gsD=5']
我想根据“Count=”之后的数字对该列表进行排序。 我 不能 使用 .sort(key=lambda x: x[37]) 来做到这一点,正如 here 所说的那样,因为我的数字变成了双、三、...数字。如何在不使用正则表达式的情况下对该列表进行排序?
(请不要列出很长的列表,我写了上面列表的摘要版本)
【问题讨论】:
-
不允许使用正则表达式?这让事情变得更加困难。
-
sorted(lst, key=lambda x: int(x.split('Count=', 1)[1].split(',', 1)[0]))