按升序排序python中的列表元素

时间:2018-04-15 07:52:42

标签: python python-2.7

我有元素列表,我必须按加入顺序执行排序。

下面是list1。考虑冒号后(如果元素为'abcd_z12_yyy:3590,60240,0',排序参与者为3590),则按升序排序。

>> list1 = ['abcd_z05_yyy:2182,60240,0',
...  'abcd_z06_yyy:2566,60240,0',
...  'abcd_z07_yyy:618,60240,0',
...  'abcd_z08_yyy:6,60240,0',
...  'abcd_z09_yyy:8838,60240,2',
...  'abcd_z10_yyy:6534,60240,0',
...  'abcd_z11_yyy:1680,60240,0',
...  'abcd_z12_yyy:3590,60240,0',
...  'abcd_z13_yyy:6,60240,0',
...  'abcd_z14_yyy:6,60240,0',
...  'abcd_z15_yyy:6,60240,0',
...  'abcd_z16_yyy:6,60240,0']

>>> sorted(list1, key=lambda x: x.split(':')[1])

输出:

['abcd_z11_yyy:1680,60240,0', 'abcd_z05_yyy:2182,60240,0', 'abcd_z06_yyy:2566,60240,0', 'abcd_z12_yyy:3590,60240,0', 'abcd_z08_yyy:6,60240,0', 'abcd_z13_yyy:6,60240,0', 'abcd_z14_yyy:6,60240,0', 'abcd_z15_yyy:6,60240,0', 'abcd_z16_yyy:6,60240,0', 'abcd_z07_yyy:618,60240,0', 'abcd_z10_yyy:6534,60240,0', 'abcd_z09_yyy:8838,60240,2']
>>>

预期产出:

 ['abcd_z08_yyy:6,60240,0',
  'abcd_z13_yyy:6,60240,0',
  'abcd_z14_yyy:6,60240,0',
  'abcd_z15_yyy:6,60240,0',
  'abcd_z16_yyy:6,60240,0',
  'abcd_z07_yyy:618,60240,0',
  'abcd_z11_yyy:1680,60240,0',
  'abcd_z06_yyy:2566,60240,0',
  'abcd_z12_yyy:3590,60240,0',
  'abcd_z10_yyy:6534,60240,0',
  'abcd_z09_yyy:8838,60240,2',
 ]

0 个答案:

没有答案