Há algum Python Switch Statement

Última atualização em Sábado 7º mai 2022

Switch Case Python

Essa linguagem Python suporta as declarações de caso de comutação ou não?

Bem, a resposta a esta pergunta é não. Ao contrário de qualquer outra linguagem de programação, a linguagem Python não possui funcionalidade de instrução do interruptor.

python switch case

Como implementar o caso do switch em Python?

  • If-elif-else
  • Dictionary Mapping
  • Usando classes

Método 1 : If-elif-else

Python Switch Sintaxe com If-elif-else

	if (condition):
    statement
elif (condition):
    statement
else:
    statement
	

Python switch

	carro = 'Volkswagen Jetta'

if carro == 'Fiat Uno':
    print("Carro é Fiat uno")

elif carro == "Volkswagen Jetta":
    print("Carro é Volkswagen Jetta")

elif carro == "BMW Série 3":
    print("Carro é BMW Série 3")

else:
    print("O carro não é fiat uno, Volkswagen Jetta ou BMW Série 3")
	
	# Carro é Volkswagen Jetta
	

Método 2 : Dictionary Mapping

	def toyota():
    return "Toyota"
def chevrolet():
    return "Chevrolet"
def honda():
    return "Honda"
def gmc():
    return "GMC"
def default():
    return "..."

switcher = {
    1: toyota,
    2: chevrolet,
    3: honda,
    4: gmc
}

def switch(carroNome):
    return switcher.get(carroNome, default)()

print(switch(3))
print(switch(1))
	
	Honda
Toyota
	

python case

Método 3 : Usando classes

	class PythonSwitch:
    def carro(self, carroNome):

        default = "..."

        return getattr(self, 'case_' + str(carroNome), lambda: default)()

    def case_1(self):
        return "Toyota"

    def case_2(self):
        return "Chevrolet"

    def case_3(self):
        return "GMC"

    def case_4(self):
       return "Honda"

swi = PythonSwitch()

print (swi.carro(1))

print (swi.carro(3))