Veremos agora laços e estruturas de repetição em Python. Com efeito, esse artigo é mais um da série Aprenda Python que começamos aqui no blog da MeuGuru. Decerto, esse é o capítulo 4, isto é o A.py 4, dessa coletânea de textos que busca te ensinar a como programar numa das linguagens de programação mais quentes do momento o Python. Nesse sentido, nesse artigo vamos dar mais um passo rumo ao aprendizado em Python, agora, nos focaremos nas estruturas de repetição.
Em suma, nesse artigo te ensinaremos a como fazer os tão temidos, ao menos por quem está embarcado nesse mundo da programação, laços e/ou loops. De fato, esse tema é um dos principais assuntos que você deve dominar na jornada de aprendizado da programação, uma vez que, loops e estruturas de repetição são muito úteis para a implementação de rotinas e de tarefas repetitivas que é tudo que um algorítimo mais gosta de fazer. Então gurunauta, feita essa rápida introdução está na hora de irmos ao que interesse e começarmos a programar.
Estruturas de repetição: O que são ?
De início, é importante entendermos o que é uma estrutura de repetição. Com efeito, esse tipo de estrutura corresponde a uma forma de implementarmos uma ação em nosso algoritmo de modo que que ela seja repetida um número desejado de vezes. Decerto, essa funcionalidade nos dá uma gama de possibilidades muito grande uma vez que com ela podemos implementar rotinas que resolvem problemas pesados, otimizam continuamente quantidades de interesse e ainda que verifiquem condições sobre objetos para algum interesse.
Exemplo esquemático de um algoritmo em Loop.
Então, com intuito de exemplificarmos melhor essas ideias vamos a dois exemplos ilustrativos.
- Primeiro, vamos considerar o cenário de uma fábrica. Ademais, imaginemos que nessa fábrica há uma esteira onde caixas são colocadas nelas e levadas até o fim do percurso, passando por um etiquetador no meio do caminho. Em suma, o funcionário responsável por estar introduzindo as caixas na estira está fazendo o papel de jogar cada objeto (as caixas) no loop (esteira). Assim, o Loop acaba quando não houver mais caixas, ou seja, quando o trabalho do funcionário finalizar.
- Agora, vamos descrever o papel do etiquetador. Com efeito, o trabalho do etiquetador consiste em colocar etiquetas em caixas que vão passando em uma esteira a sua frente. Em suma, a ação do etiquetador de etiquetar cada caixa corresponde a um algoritmo e logo ele está esquematicamente representando alguma ação que desejaremos colocar em nosso loop.
- Ademais, veja que esse exemplo pode se tornar bem ilustrativo. Para isso, imagine que há caixas rosas e amarelas. Assim, agora imagine ainda que o trabalho do etiquetador é etiquetar com fichas rosas as caixas rosas e fichas amarelas as caixas amarelas. Então, quando cada objeto passa pelo loop e chega na ação do etiquetador ele deve tomar uma decisão a ser feita. Em suma, isso representa nada mais e nada menos que uma implementação condicional dentro de um loop.
Então, uma vez que já te damos a noção do que queremos trabalhar e de como isso pode ser útil, vamos agora conhecer quais são as estruturas de repetição em nossa linguagem.
Quais são as estruturas de repetição em Python ?
Há duas estruturas de repetição em Python que você deve conhecer elas são: for e o while. Em suma, elas são tais que:
- Com efeito, a estrutura for, do inglês para, faz com que sua varia variável, indicada logo após o for seja rodada/colocada para varrer (percorrer) todos os elementos de uma estrutura de vetor em Python. Por exemplo:
- for i in “batata”
print(i)
- for i in “batata”
- esse programa acima faz com que a variável i percorra a string “batata” e vá mostrando na tela, a cada loop, a letra correspondente. De fato, o for é uma ferramenta muito poderosa em Python e é ela que nos focaremos em nosso tutorial. Pois, poderemos iterar em cada loop diversas estruturas como strings, vetores, listas, dicionários, tuplas e praticamente tudo que poder indexado em Python.
- Ademais, há ainda o while. Com efeito, o while funciona da seguinte forma: while (condição a ser cumprida). Ou seja, o while (do inglês enquanto) realiza o loop enquanto a condição posta por nós for ainda cumprida.
A seguir mostramos um scritpt feito tanto com for e com while para exemplificarmos a diferença entre as duas estruturas. Em suma, esse script é simples e realiza apenas a impressão dos números de 0 até 9 em sua tela.
Implementando um código com laços !
Feita essa apresentação já podemos agora começar a implementar nossos próprios problemas. Com efeito, vamos utilizar for para construirmos a tabuada de um número escolhido. Para isso, será necessário que o usuário coloque o valor de um número, vamos chamar esse número de x. Assim, em nossa tela deverá ser mostrado toda a tabuada de x, ou seja, x vezes 1,2,3 até chegar em 10.
De fato, esse é um exemplo clássico em programação com estruturas de repetição e nos permitirá explorar facilmente como podemos usar os loops. Bom, por preferência pessoal eu irei utilizar a estrutura for para essa tarefa. Assim, vamos descrever como será nosso algoritmo a seguir.
- Simplesmente queremos ter o conhecimento de um número x que será representado por nós por uma variável real. Logo, simplesmente basta fazermos x = 4, por exemplo.
- Com a variável definida queremos então construir um loop que a cada iteração será capaz de pegar o número x e multiplicar por algum número inteiro e depois mostrar isso em tela. Para tanto, podemos fazer isso com o for do seguinte modo:
- for i in range(0,11,1):
- valor = x * i
- print(“A multiplicação do número {} por {} é: {}*{} = {}”.format(x,i,x,i,valor))
- for i in range(0,11,1):
- Note que fizemos o i de 0 até 11 (primeiro e segundo parâmetros respectivamente do range) e iterados de 1 em 1. De fato, isso é feito pois assim seremos capazes de fazer i percorrer 0 até 10 o range sempre vai até o extremo – 1 e começa a contar a partir do seu iterador.
Desse modo nosso programa de tabuada está pronto. Ademais, nosso programa então pode ser mostrado a seguir.
Criando uma tabuada completa em Python
Agora, vamos generalizar e estender o problema anterior. Com efeito, vamos usar dois loops para criar uma tabuada completa de todos os números de 0 até 10 (claramente você poderá estender isso depois gurunauta). Bom então, para isso vamos introduzir um loop para a determinação da variável x. Assim, x irá ter valores novos e a estrutura do código ficará assim.
- Introduzimos um for antes do código do seguinte modo:
- for x in range(0,11,1):
Esse loop antes retira a necessidade de determinarmos a variável x anteriormente e então para cada x capturado nesse loop calcularemos sua tabuada. Assim, nosso código ficará da seguinte forma.
Referências
- MATTHES, Eric. Python Crash Course. 2. ed. São Paulo: No Starch Press, 2019.
- RAMALHO, Luciano. Fluent Python. Sebastopol: O’Reilly Media, 2015.
- 3. PYTHON. Documentação oficial do Python. Disponível em: https://docs.python.org/3/. Acesso em: 4 dezembro. 2023.
4. PYTHON. Python.org. Disponível em: https://www.python.org/. Acesso em: 4 dezembro. 2023.
5. PYTHONTUTOR. Python Tutor. Disponível em: http://pythontutor.com/. Acesso em: 4 dezembro. 2023. - 6. REAL PYTHON. Disponível em: https://realpython.com/. Acesso em: 4 dezembro. 2023.
7. GEEKSFORGEEKS. Disponível em: https://www.geeksforgeeks.org/python-programming-language/. Acesso em: 4 dezembro. 2023.
8. SCHAFFER, Corey. Corey Schafer’s Python Tutorials. Disponível em: https://youtube.com/playlist?list=PL-osiE80TeTt2d9bfVyTiXJA-UTHn6WwU. Acesso em: 4 dezembro. 2023.