假设我有序列{1;2;3;4}
,我想将(fun x -> x * 2)
应用于第3个元素,产生{1;2;6;4}
。构建这样一个函数的最佳方法是什么?
答案 0 :(得分:5)
在将seq
作为流进行适当处理的同时,这样做的一种简单方法是:
let input = seq {1..4}
let result = input |> Seq.mapi (fun i x -> match i with
| 2 (* 3rd item *) -> x*2
| _ -> x)