Sono abbastanza nuovo a F # e sto avendo un momento difficile cercando di estrarre un elenco di valori distinti da un elenco:Come si estrae elementi distinti da un elenco?
let myList = [ 1; 2; 2; 3; 4; 3 ]
// desired list
[ 1; 2; 3; 4 ]
Come posso fare? Vedo che seq
ha un metodo distinct
, ma non elenchi.
Sono un po 'confuso da questo codice (che funziona benissimo). Quindi puoi passare una lista a Seq.distinct? ... no aspetta ... è così perché la lista implementa seq (ehm ... qualunque sia il termine funzionale)? –
Le sequenze in F # sono rappresentate dal tipo 'seq <'T>', che è un alias per 'IEnumerable'. Lista implementa 'IEnumerable' in modo da poter richiamare tutte le funzioni del modulo' Seq' su di esso. Ma se hai bisogno di List come risultato, devi trasformare il risultato 'seq' in elenco usando la funzione' List.ofSeq'. – Petr
OK, questo ha senso. Grazie! –