Compartir a través de


Seq.take<'T> (Función de F#)

Devuelve los elementos de la secuencia hasta un recuento especificado.

Espacio de nombres/Ruta de acceso del módulo: Microsoft.FSharp.Collections.Seq

Ensamblado: FSharp.Core (en FSharp.Core.dll)

// Signature:
Seq.take : int -> seq<'T> -> seq<'T>

// Usage:
Seq.take count source

Parámetros

  • count
    Tipo: int

    Número de elementos que se van a tomar.

  • source
    Tipo: seq<'T>

    Secuencia de entrada.

Excepciones

Excepción

Condition

ArgumentException

Se produce cuando la secuencia de entrada está vacía.

ArgumentNullException

Se produce cuando la secuencia de entrada es NULL.

InvalidOperationException

Se produce cuando el número supera el número de elementos de la secuencia.

Valor devuelto

Secuencia resultante.

Comentarios

Seq.truncate devuelve tantos elementos como los que contiene la secuencia en lugar de producir una excepción.

Esta función se denomina Take en los ensamblados compilados. Si obtiene acceso a la función desde un lenguaje distinto de F# o mediante reflexión, use este nombre.

Ejemplo

El siguiente ejemplo muestra el uso de Seq.take y contrasta su comportamiento con Seq.truncate.

let mySeq = seq { for i in 1 .. 10 -> i*i }
let truncatedSeq = Seq.truncate 5 mySeq
let takenSeq = Seq.take 5 mySeq

let truncatedSeq2 = Seq.truncate 20 mySeq
let takenSeq2 = Seq.take 20 mySeq

let printSeq seq1 = Seq.iter (printf "%A ") seq1; printfn "" 

// Up to this point, the sequences are not evaluated. 
// The following code causes the sequences to be evaluated.
truncatedSeq |> printSeq
truncatedSeq2 |> printSeq
takenSeq |> printSeq
// The following line produces a run-time error (in printSeq):
takenSeq2 |> printSeq
  

Plataformas

Windows 8, Windows 7, Windows Server 2012, Windows Server 2008 R2

Información de versiones

Versiones de la biblioteca básica de F#

Se admite en: 2.0, 4.0, portables

Vea también

Referencia

Collections.Seq (Módulo de F#)

Microsoft.FSharp.Collections (Espacio de nombres de F#)