Como substituir a switch case no Python? Tutorial com exemplos
Escrito por Pythoneiro
A instrução switch case é uma estrutura de controle comumente usada em outras linguagens de programação, mas não é suportada nativamente no Python. Em vez disso, existem outras maneiras de substituir a switch case e alcançar o mesmo resultado. Nesse tutorial, veja duas maneiras usando dicionários (estuturas de dados base no python) e condicionais ou funções.
Na programação switch e case são estruturas de controle de fluxo que são usadas para selecionar um bloco de código entre várias possibilidades. O switch é usado para avaliar uma variável ou expressão, enquanto o case é usado para definir as possíveis opções para a variável ou expressão. Quando a variável ou expressão é avaliada, o bloco de código correspondente ao case é executado. É uma forma flexível de controlar o fluxo de execução de um programa, permitindo que várias ações diferentes sejam executadas dependendo dos valores da variável ou expressão avaliada.
Alternativas ao switch case no Python
Usando dicionários e condicionais no Python
Um dos métodos mais populares para substituir a switch case é usar um dicionário. Um dicionário é uma estrutura de dados que pode armazenar pares de chave/valor e é muito útil para mapear um conjunto de entradas para um conjunto de saídas.
Os dicionários são uma ferramenta muito útil em Python para mimetizar o comportamento de switch e case. O primeiro passo é criar um dicionário com as entradas e saídas desejadas. Em seguida, é necessário usar o método get() para recuperar o valor desejado para a chave especificada. Por último, é necessário usar a função if-else para verificar se o valor recuperado é igual ao esperado e, se for, executar a ação desejada. Com isso, é possível criar uma estrutura de controle que se comporta como switch e case no Python.
Os dicionários são um dos recursos mais importantes do Python, pois permitem a criação de estruturas de dados flexíveis. Para isso, basta criar um dicionário com as chaves sendo os casos e os valores sendo as ações. Por exemplo, imagine que está programando um jogo. Você quer que, quando um jogador pressionar um botão específico, você quer que o personagem faça determinada ação. Vamos criar um dicionário de ações para três botões “x”, “o” e “v”, com as respectivas ações para cada: pular, socar ou agachar. Vamos determinar o valor_entrada
como se estivesse lendo o botão pressionado. Por fim, vamos imprimir na tela qual ação o personagem deve ter realizado. Veja esse exemplo de switch case no python usando dicionários no código abaixo:
Você pode testar o código alterando valor de valor_entrada
para 'botao_x'
, 'botao_x'
, 'botao_x'
ou outra coisa. Note que se não for nenhum botão especificado no dicionário acoes
, não vai acontecer nada. Note que para esse exemplo funcionar, você precisará usar condicionais if elif e else. Para aprender sobre condicionais no python, clique aqui.
>>Aprenda a programar em Python GRATUITO<<
Switch case com funções no Python
As funções também podem ser usadas para substituir a switch case na programação python. Uma função é um bloco de código que pode ser reutilizado e é executado quando chamado. As funções são úteis para mapear um conjunto de entradas para um conjunto de saídas.
Para usar funções para mimetizar switch e case no python, é necessário criar uma função com parâmetros e um dicionário com os valores que serão testados. Por exemplo:
Assim, é possível usar funções para mimetizar switch e case no python. Veja que estamos novamente usando dicionários. Mas agora, criamos uma função chamada switch
que traz o resultado para cada caso definido no dicionário.
Resumindo...
A instrução switch case não é suportada nativamente no Python, mas existem muitas maneiras de substituí-la e alcançar o mesmo resultado. Nesse tutorial você aprendeu duas maneiras mais populares de substituir a switch case no python: usando dicionários + condicionais ou funções. Cada uma dessas alternativas tem suas próprias vantagens e desvantagens, então é importante considerar seus requisitos e escolher a melhor solução para o seu problema.
Artigos relacionados
chatGPT IA Programador
O ChatGPT substituirá os programadores?
Leia o artigo completo
Python programação Matemática
Como calcular expoente, módulo e floor division no Python
Leia o artigo completo
chatGPT Google Colab
Como conversar com chatGPT pelo Google Colab?
Leia o artigo completo
Python programação Matemática
Aprenda Operações Aritméticas na Programação Python
Leia o artigo completo
Python Programação
Números no Python: tipo int e float | Aprenda Python Gratuito
Leia o artigo completo
Python Matplotlib
Como instalar e usar Matplotlib no Python? (Exemplos de gráficos)
Leia o artigo completo