2016-08-18 61 views
-3

我觉得它会更好,说明我的问题,所以在这里它是:字符串进行排序的复杂列表蟒蛇

我有这样的名单:

['1.2.3', '1.2.4', '10.3', '1.3', '12', '14.12.123', '4', '6'] 

并想将其分类,如下所示:

['1.2.3', '1.2.4', '1.3', '4', '6', '10.3', '12', '14.12.123'] 

正如你所看到的,我想先排序第一个数字,然后第二个等等。也可能有无限数量的数字在列表项(例如'1.2.3.4.5.6'等等)

我已经尝试了通常的排序方法无济于事,并且无法在互联网上找到类似的情况来帮助我。

感谢您的帮助。

+0

你尝试过什么?你有没有把'key'参数看成'sorted'? –

回答

2

这应做到:

sorted(l, key=lambda k: [int(num) for num in k.split('.')])

+2

@NehalJWani:不。 –

+0

为什么不呢?你有更好的主意吗? –