gpt4 book ai didi

F# zip 实现

转载 作者:行者123 更新时间:2023-12-01 08:26:49 25 4
gpt4 key购买 nike

我不知道如何在 F# 中实现 Zip 功能。谁能告诉我我做错了什么?这是我在 fsi.exe 中输入的内容:

> let rec zip xs ys =
- match xs with
- | [] -> []
- | head :: tail -> (match ys with
- | [] -> []
- | headY :: tailY -> (head, headY) :: zip tail tailY);;

val zip : xs:'a list -> ys:'b list -> ('a * 'b) list

> zip [1;2;3;4] ["a","b","c","d"];;
val it : (int * (string * string * string * string)) list =
[(1, ("a", "b", "c", "d"))]

最佳答案

在您的示例中, ["a","b","c","d"] 是一个包含一个元素的列表,该元素是 4 维元组。这就是为什么你会从 zip 中得到意想不到的结果。只需使用 ; 作为元素分隔符。

关于F# zip 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32489541/

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