gpt4 book ai didi

f# - 在 F# 中将列表分组为列表列表

转载 作者:行者123 更新时间:2023-12-04 23:38:43 25 4
gpt4 key购买 nike

好吧,所以我迷失了这一点。我有一个对象列表。每个对象作为一个非唯一的 ID 在其中。我想在这个 ID 上分组,但对于我的生活,我不知道如何做到这一点。

这就是我所拥有的

type fooObject = {
Id : int
Info : string
}

let fooObjects: fooObject list

数据可能看起来像这样
[ { Id = 1 ; Data = "foo" } ; { Id = 1 ; Data = "also foo" } ; { Id = 2 ; Data = "Not foo" } ]

我想要类似的东西
let fooObjectsGroupedById : fooObject list list

所以最终的结果会是这样的
[ [{ Id = 1 ; Data = "foo" } ; { Id = 1 ; Data = "also foo" } ] ; [{ Id = 2 ; Data = "Not foo" }]]

最佳答案

使用 List.groupBy :

let groupById fooObjects =
List.groupBy (fun foo -> foo.Id) fooObjects
|> List.map snd

关于f# - 在 F# 中将列表分组为列表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45886612/

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