我有一个包含元素的列表:
['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,因为我的数字变成了两位数,三位数。。。数字。不使用regex如何对列表排序?你知道吗
(请不要把清单写得太长,我在上面写了一个摘要)
如果没有regex,并且假设所有字符串的格式都相同,则可以执行以下操作:
列表理解
[i for i in x.split(',')[2] if i.isnumeric()]
在逗号处拆分字符串,获取索引2处的元素(即“Count=___
”),并提取所有数字字符串。然后,int(''.join
将它们连接在一起并将其转换为整数。然后,您可以使用它作为键来对列表进行排序。你知道吗这样做:
相关问题 更多 >
编程相关推荐