gpt4 book ai didi

python - 嵌套列表的 Groupby

转载 作者:行者123 更新时间:2023-11-30 22:33:01 24 4
gpt4 key购买 nike

我有一个列表[[1,20],[1,30],[2,30],[2,50],[3,60],[1,20]]。如果嵌套列表中的第一个元素与之前的相同,我应该删除它(而不是删除列表中的重复项)。在这种情况下,我应该得到 [[1,20],[2,30],[3,60],[1,20]]

我正在使用 itemgetter 和 groupby 并编写了以下内容:

[x[0] for x in groupby(testlist, itemgetter(0))]

上面的代码仅输出第一个元素为 [1, 2, 3, 1]。我希望它的嵌套列表格式与 [[1,20],[2,30],[3,60],[1,20]] 相同。我怎样才能在同一个列表“测试列表”上就地执行此操作。有没有比简单地再次迭代整个列表更好的方法来实现这一点。

最佳答案

您只显示了 key 。 itertools.groupby返回键和组的元组。您需要组中的第一项:

print [next(g) for k, g in groupby(i, itemgetter(0))]
# # [[1, 20], [2, 30], [3, 60], [1, 20]]

关于python - 嵌套列表的 Groupby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45281509/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com