Ao desenvolver aplicações em Python, é comum precisar criar menus para organizar as funcionalidades disponíveis ao usuário. Em vez de escrever o mesmo código várias vezes, podemos utilizar funções, listas e laços de repetição para tornar o programa mais limpo, organizado e reutilizável.
Neste artigo, vamos explorar como construir um sistema de menus utilizando conceitos fundamentais da linguagem Python, como criação de funções, parâmetros, listas e o laço for. Além disso, veremos como evoluir a solução para permitir a criação de diferentes menus sem duplicar código.
Objetivo do Desafio
O desafio consiste em desenvolver um sistema de menus em Python aplicando boas práticas de programação. A proposta é criar funções reutilizáveis que facilitem a manutenção e a expansão do código.
Os principais objetivos são:
-
Criar uma função responsável por exibir cabeçalhos formatados.
-
Criar uma função para montar o menu principal.
-
Utilizar uma lista para armazenar as opções do menu.
-
Percorrer essa lista utilizando um laço
for. -
Organizar o código em funções reutilizáveis.
Criando a Função de Cabeçalho
O primeiro passo é criar uma função chamada cabecalhos(), responsável por exibir um título centralizado entre linhas de separação compostas pelo caractere =.
Essa abordagem evita repetir o mesmo trecho de código sempre que um novo título precisar ser exibido.
Exemplo de saída:
=========================
MENU INICIAL
=========================
Ao receber o texto do cabeçalho como parâmetro, a função pode ser utilizada em diferentes partes da aplicação.
Construindo o Menu Inicial
A segunda etapa é criar a função menu_inicial(). Sua responsabilidade será montar e exibir o menu da aplicação.
Dentro dessa função, a primeira ação será chamar cabecalhos() para exibir o título MENU INICIAL.
Em seguida, as opções serão armazenadas em uma lista, por exemplo:
[
"1 - Login",
"2 - Cadastro",
"0 - Sair"
]
O uso de listas torna o código mais organizado e facilita futuras alterações, como adicionar ou remover opções.
Quer acelerar sua evolução como programador? Entenda por que errar faz parte do processo de aprendizagem e como transformar cada falha em experiência prática. Leia agora: O verdadeiro aprendizado acontece quando você erra.
👉 https://entrebugsesolucoes.com.br/posts/o-verdadeiro-aprendizado-acontece-quando-voce-erra/
Percorrendo as Opções com o Laço for
Após criar a lista, utiliza-se um laço for para percorrer cada item e imprimi-lo na tela.
Essa solução é muito mais eficiente do que escrever um comando print() para cada opção, especialmente quando o menu cresce ao longo do desenvolvimento da aplicação.
O resultado esperado será:
=========================
MENU INICIAL
=========================
1 - Login
2 - Cadastro
0 - Sair
Organização e Reutilização do Código
Uma das maiores vantagens de dividir o programa em funções é a reutilização.
Ao invés de repetir o mesmo código em diferentes partes da aplicação, basta chamar a função sempre que necessário.
Essa prática oferece diversos benefícios:
-
Código mais organizado.
-
Facilidade para manutenção.
-
Menor quantidade de código repetido.
-
Maior legibilidade.
-
Facilidade para expansão do sistema.
O Desafio Extra
Após concluir o exercício básico, o desafio propõe uma melhoria interessante: tornar a função menu_inicial() mais genérica.
Em vez de exibir apenas MENU INICIAL, ela passa a receber um parâmetro com o título desejado.
Dessa forma, a mesma função poderá criar diferentes menus, como:
-
MENU USUÁRIO
-
MENU ADMINISTRADOR
-
MENU CONFIGURAÇÕES
Tudo isso sem duplicar código, seguindo um dos princípios mais importantes da programação: a reutilização.
Conceitos Praticados
Durante o desenvolvimento deste desafio, são exercitados diversos fundamentos importantes da linguagem Python:
-
Criação de funções.
-
Uso de parâmetros.
-
Reutilização de código.
-
Manipulação de listas.
-
Laços de repetição com
for. -
Organização e estruturação de programas.
Esses conceitos servem como base para projetos maiores e ajudam a desenvolver soluções mais profissionais e fáceis de manter.
Conclusão
Embora seja um exercício simples, esse desafio reúne diversos conceitos essenciais para quem está aprendendo Python. Ao criar funções reutilizáveis, utilizar listas para armazenar informações e percorrê-las com o laço for, o desenvolvedor começa a escrever códigos mais organizados, escaláveis e alinhados às boas práticas da programação.
Além disso, o desafio extra incentiva a criação de funções genéricas, capazes de atender diferentes necessidades sem repetir lógica, uma habilidade indispensável para o desenvolvimento de aplicações mais robustas.
Dominar esses fundamentos é um passo importante para construir sistemas cada vez mais completos e preparados para evoluir conforme novas funcionalidades forem sendo adicionadas.