Coletânea Python do ZERO às Redes Neurais Artificiais

Fernando Feltrin · Capítulo 155 de 287

Páginas do PDF

Coletânea Python do ZERO às Redes Neurais Artificiais

Count

Quando se estuda os fundamentos de uma linguagem de programação, um dos conceitos presentes é o de contadores ou incremento de valores dependendo do contexto.

Avançando um pouco dentro desses conceitos, visando apenas otimizar a

performance de execução de nosso código, podemos fazer o uso da ferramenta count( ).

 

Na prática, como tal módulo não é nativo do Python, mas compõe a

biblioteca itertools, precisamos realizar a importação do mesmo. Como já feito outras vezes, a importação é realizada de forma simples por meio do comando from itertools import count.

Lembrando que como iremos usar apenas dessa função da biblioteca

itertools, uma vez importado o módulo/pacote, podemos usar o mesmo diretamente, sem precisar instanciar a biblioteca em si.

Note que é criada a variável contador que simplesmente chama a função

count( ), sem parâmetros mesmo, atribuída para si,

 

Uma vez que temos uma variável chamando a função, podemos a partir

disso realizar qualquer tipo de interação sobre a mesma, internamente todo e qualquer código que iterar com essa variável estará iterando com count( ).

Sendo assim, podemos criar um laço de repetição bastante básico, onde

iremos interagir com a variável contador.

Repare que no corpo desse laço for simplesmente é exibido o número em questão que está sendo gerado e processado pelo contador, também é criada uma simples estrutura condicional dizendo que se o número gerado for igual ou maior que 10, é para que o processamento seja interrompido.

 

O retorno é, como esperado, 11 números sequenciais, uma vez que o

contador sempre é por padrão inicializado em 0.

 

Por meio do pré-visualizador podemos notar algo interessante,

diferentemente do método tradicional incrementando uma variável, onde a cada laço é gerada uma nova instância da variável alocando espaço em memória, aqui temos um espaço alocado dinamicamente atualizado a cada laço.

Como dito anteriormente, a justificativa de se usar tal método é

simplesmente a otimização de performance de nosso código. Em geral, uma boa prática de programação é dedicar uma fase de polimento a nossos programas, de modo a, se for o caso, até mesmo reescrever certos blocos de código quando for possível um ganho de performance.

 

Como mencionado anteriormente, por padrão todo e qualquer contador

tem sua inicialização contado números a partir do zero, porém, é perfeitamente possível via função count( ) definir um marco inicial manualmente, e isso é feito por meio do parâmetro start seguido do valor a ser usado como referência.

 

Adaptado o exemplo anterior para agora iniciar em 40 e contar até que o

valor seja igual ou maior que 50, o resultado é uma sequência de números dentro desse intervalo.

 

Explorando uma outra funcionalidade muito utilizada rotineiramente, ao

fazer o uso de nosso contador via count( ) também podemos definir de quantos em quantos números será feita a devida contagem.

Como esperado, o retorno é uma sequência de números de 0 a 20,

contados de 2 em 2 números.