Как получить текущий порядковый номер в итерации в F#?


Рассмотрим следующий код для демонстрации вопроса:

let sequence = Seq.initInfinite (fun _ -> "Element")
Seq.iter (fun _ -> printf "Element no: ?") sequence 

Можно ли каким-либо образом получить текущий порядковый номер (например, его ранг) для печати?

1 3

1 ответ:

Используйте функцию iteri :

let sequence = Seq.initInfinite (fun _ -> "Element")
sequence |> Seq.iteri (fun i _ -> printfn "Element no. %d" i)