我有一個列表,它看起來如下:如何通過子列表中的某個項目對列表進行排序?
list = [[u'schei\xdfunwetter', u'storm', u'0.0007813'], [u'schei\xdfunwetter', u'goddamn', u'0.0002343'], [u'ingenieurin', u'night', u'0.0000442'], [u'ingenieurin', u'you', u'0.0000008'], [u'ingenieurin', u'NULL', u'0.0000004'], [u'ingenieurin', u'last', u'0.0000472'], [u'ingenieurin', u'anything', u'0.0000328']]
我想對這個文件列表由號碼(=概率)。 通過以前的問題/答案#2看,我發現下面的解決方案,這似乎已經工作了名單(li = [['a1', 1, 1.56], ['b3', '6', 9.28], ['c2', 1, 6.25]...]
):
list.sort(key=itemgetter(2))
用我的數據。但是,這並不工作,並返回NONE。 ,因爲我以爲,它已與數是一個字符串做的,我試過如下:
sorted_list = list.sort(key=lambda x: int(x[2]))
,但這返回另一個錯誤:
ValueError: invalid literal for int() with base 10: '0.0000723'
誰能幫助?
list.sort * always * returns None。該列表已排序。 – RemcoGerlich