【发布时间】:2012-10-28 16:13:24
【问题描述】:
我想将此列表中的这些项目分类到新列表中...
truc = [['12', 'brett', 5548],
['22.3', 'troy', 9514],
['8.1', 'hings', 12635],
['34.2', 'dab', 17666],
['4q3', 'sigma', 18065],
['4q3', 'delta', 18068]]
... 使用最后一个字段将它们分组到大小为 3500 的箱中 所以,理想的结果是这样的:
firstSort = [['34.2', 'dab', 17666],
['4q3', 'sigma', 18065],
['4q3', 'delta', 18068]]
secondSort = [['22.3', 'troy', 9514],
['8.1', 'hings', 12635]]
lastSort = ['12', 'brett', 5548]
我尝试使用 itertools.groupby() 函数,但无法找到指定 bin 大小的方法。
【问题讨论】:
-
是的,你是对的。我的意思是垃圾箱的大小为 3500。我将进行编辑。谢谢!
-
如果最后一个字段的值是 0、3000 和 6000,那将是什么配对?
[0,3000], [6000],或[0], [3000,6000],或[0,3000,6000]? -
指定一个返回键除以3500的整数结果的函数就够了吗?不过,这可能会以不太理想的方式对项目进行分组。
-
@jwpat7:你不认为他只是错误地输入了 180688 而不是 18068,如果你看一下其他值,这会合乎逻辑吗?
-
@BrtH 是的,就是这样......