Compartilhar via


List.Positions

Sintaxe

List.Positions(list as list) as list

Sobre

Retorna uma lista de índices para a lista de entrada especificada.

  • list: a lista de entrada.

Ao usar List.Transform para alterar uma lista, a lista de posições pode ser usada para permitir que a transformação acesse a posição.

Exemplo 1

Localize os deslocamentos de valores na lista {1, 2, 3, 4, nulo, 5}.

Usage

List.Positions({1, 2, 3, 4, null, 5})

Saída

{0, 1, 2, 3, 4, 5}

Exemplo 2

Crie uma tabela que atribua uma ID a cada cliente com base na posição do cliente na lista.

Usage

let
    customers = {"Alice", "Bob", "Charlie", "Diana"},
    resultTable =
        Table.FromRecords(
            List.Transform(
                List.Positions(customers),
                each [
                    IDNumber = _ + 1,    // Make it 1-based
                    CustomerName = customers{_}
                ]
            ),
            type table [IDNumber = Int64.Type, CustomerName = text]
        )
in
    resultTable

Saída

#table (type table[IDNumber = Int64.Type, CustomerName = text],
{
    {1, "Alice"},
    {2, "Bob"},
    {3, "Charlie"},
    {4, "Diana"}
})