Este artigo explicará o uso da função "enumerada" disponível na biblioteca de módulos padrão do Python. A função de enumerar permite atribuir um "índice" ou "contagem" a elementos em qualquer objeto iterável. Você pode implementar mais lógica neles, pois terá acesso a ambos os valores e uma contagem mapeada para ele.
Sintaxe e exemplo básico
Se você usou um loop "para" em outras linguagens de programação, especialmente a linguagem "C" e outros idiomas com sintaxe no estilo "C", você pode ter especificado um índice de partida no loop. Para referência, aqui está a aparência de um loop "for" em "C" e em outros idiomas com sintaxe semelhante:
para (int i = 0; i < 10; i++)A instrução LOOP inicializa uma variável com um valor de zero, verifica se é menor que um limite e o incrementa em uma contagem após avaliar a lógica dentro do bloco de loop (se a condição de parada for atendida). Dessa forma, você pode usar um índice e atribuí -lo a quaisquer objetos referenciados em seu bloco de loop. Em comparação, aqui está a aparência de um loop para o mesmo resultado no Python:
para i no intervalo (0, 10):A função "range" no Python permite especificar uma sequência de intervalo numérica que tenha uma etapa padrão de 1. Você pode alterar o valor da etapa fornecendo um terceiro argumento. O segundo argumento na função "range" é usado para definir o limite para a condição de parada. Ambas as amostras de código produzem a seguinte saída:
0Esses loops funcionam bem se você quiser apenas gerar alguma sequência de números e associá -los a alguma lógica dentro da instrução loop. No entanto, você pode ter que usar outro loop aninhado ou a função de "rendimento" em qualquer tipo iterável para atribuir algum tipo de contagem rastreável. O método "enumerado" facilita a atribuição de índices a iteráveis em uma declaração, eliminando assim a necessidade de executar vários loops aninhados. Dê uma olhada nesta amostra de código:
números = ["zero", "um", "dois", "três", "quatro", "cinco"]A primeira declaração define uma nova variável chamada "números" e atribui um iterável (tipo de lista) a ele. A segunda declaração mostra o uso da função "enumerada", onde você fornece um iterável a ela como um argumento obrigatório. A terceira declaração converte a variável "enumerated_numbers" em um objeto de tipo de lista. Por padrão, a função "enumerada" gera um objeto do tipo "enumerar" e não um tipo iterável, então você deve convertê -lo. Depois de executar a amostra de código mencionada acima, você deve obter a seguinte saída:
[(0, 'zero'), (1, 'um'), (2, 'dois'), (3, 'três'), (4, 'quatro'), (5, 'cinco']]A função "enumerada" atribui uma contagem a cada elemento em um tipo iterável e cria tuplas com valores emparelhados. Por padrão, a contagem começa de zero.
Agora que você atribuiu um número a cada elemento de um tipo iterável, você pode facilmente dar um pau sobre ele sem escrever declarações aninhadas:
números = ["zero", "um", "dois", "três", "quatro", "cinco"]A amostra de código especificada acima produzirá a seguinte saída:
0 zeroVocê pode tornar o código mais curto usando a função "enumerar", como mostrado na amostra abaixo:
números = ["zero", "um", "dois", "três", "quatro", "cinco"]Usando enumerar com um índice de partida diferente
A função "Enumerate" leva um argumento opcional em que você pode especificar um índice inicial. Por padrão, é zero, mas você pode alterá -lo usando o argumento "Iniciar":
números = ["um", "dois", "três", "quatro", "cinco"]Na segunda afirmação, o argumento "start = 1" é usado para alterar o ponto de partida. Depois de executar o exemplo de código especificado acima, você deve obter a seguinte saída:
1 umAtribuindo índice com etapas
Na primeira seção deste artigo, a sintaxe para “para” loop em linguagem “c” é mostrada onde você pode definir etapas entre cada contagem subsequente ou índice. A função "enumerada" no Python não tem nenhum argumento disponível para que você não possa especificar uma etapa entre as contagens. Você pode realmente escrever sua própria lógica para implementar as etapas dentro do bloqueio de loop “para” enumerado. No entanto, existe uma maneira de implementar etapas personalizadas escrevendo código mínimo. O exemplo a seguir mostra a implementação das etapas usando as funções "ZIP" e "Range":
números = ["zero", "dois", "quatro", "seis"]A função "ZIP" permite criar pares pegando elementos com o mesmo índice de dois ou mais iteráveis. Portanto, a função "ZIP" aqui capta um elemento do iterable retornou da função "Range (0, 7, 2)" e outro elemento da lista "Numbers" e depois os combina com uma tupla. O resultado final é uma implementação idêntica à função "enumerar", mas com etapas personalizadas especificadas como um terceiro argumento na função "Range (0, 7, 2)" (2 neste caso). Depois de executar o exemplo de código especificado acima, você deve obter a seguinte saída:
0 zeroConclusão
A função "enumerada" no Python permite que você escreva código conciso, atribuindo uma sequência numérica a elementos em um objeto iterável. Isso é realmente útil se você deseja acompanhar o índice de itens dentro de um tipo iterável. Se você deseja "enumerar" tipos iteráveis com etapas personalizadas, use a função "ZIP" explicada no último exemplo.