gpt4 book ai didi

f# - 在 F# 序列中复制列表项 n 次

转载 作者:行者123 更新时间:2023-12-04 14:34:36 25 4
gpt4 key购买 nike

我在 F# 中有一个序列:

let n = 2

let seq1 = {
yield "a"
yield "b"
yield "c"
}

我想打印序列中的每个项目 n 次。我可以这样做:
let printx line t = 
for i = 1 to t do
printfn "%s" line

seq1 |> Seq.iter (fun i -> printx i n)

这个的输出是:
一种
一种


C
C

我认为这不是最好的解决方案。如何复制序列中的项目?

最佳答案

您可以创建一个函数来复制输入序列的每个元素:

let replicateAll n s = s |> Seq.collect (fun e -> Seq.init n (fun _ -> e))

然后
seq1 |> replicateAll 2 |> Seq.iter (printfn "%s")

关于f# - 在 F# 序列中复制列表项 n 次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43719846/

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