Articles

2 formas simples de implementar Python Switch Case Statement

free Python course with 25 real-time projects Start Now!!

no nosso último tutorial em Python, estudámos o processamento XML no Python 3. Hoje, vamos estudar como implementar Python Switch Case Statement.

Ao contrário de outras linguagens como Java Programming Language e C++, Python não tem uma construção de switch-case. Juntamente com isso, vamos ver como trabalhar uma brecha para a declaração de caso Python switch.

então, vamos discutir diferentes formas de implementação para a Declaração de caso de Switch Python.

2 formas simples de implementar Python Switch Case Statement

2 formas simples de implementar Python Switch Case Statement

o que é Python Switch Case Statement?

Python não tem uma construção simples de switch-case. Vindo de um fundo Java ou C++, você pode achar isso um pouco estranho.

Em C++ ou Java, temos algo assim:

string week(int i){ switch(i){ case 0: return "Sunday” break; case 1: return "Monday” break; case 2: return "Tuesday” break; case 3: return "Wednesday” break; case 4: return "Thursday” break; case 5: return "Friday” break; case 6: return "Saturday” break; default: return "Invalid day of week” } }

mas Python não tem isto.

assim, para contornar isso, usamos a construção do dicionário embutido do Python para implementar casos e decidimos o que fazer quando um caso é atendido.

também podemos especificar o que fazer quando nenhum é atendido.

Solutions for Python Switch Case Statement

One way out would be to implement an if-elif-else ladder. Em vez disso, podemos usar um dicionário para mapear os casos para sua funcionalidade.

Aqui, nós definimos uma semana de função() para nos dizer qual é o dia de um determinado dia da semana. Um switcher é um dicionário que executa este mapeamento.

>>> def week(i): switcher={ 0:'Sunday', 1:'Monday', 2:'Tuesday', 3:'Wednesday', 4:'Thursday', 5:'Friday', 6:'Saturday' } return switcher.get(i,"Invalid day of week")

Now, we make calls to week() with different values.

>>> week(2)

Saída

‘terça-feira’
>>> week(0)

Saída

‘domingo’
>>> week(7)

Saída

Inválida’dia da semana’
>>> week(4.5)

Saída

Inválida’dia da semana’

Como você pode ver, para outros valores que não aqueles que menciona, no switcher, imprime Inválido “dia da semana”. Isto é porque dizemos a ele para fazê-lo usando o método get() de um dicionário.

A. Usando funções Python & Lambdas

também podemos usar funções e lambdas no dicionário.

>>> def zero(): return 'zero'>>> def one(): return 'one'>>> def indirect(i): switcher={ 0:zero, 1:one, 2:lambda:'two' } func=switcher.get(i,lambda :'Invalid') return func()>>> indirect(4)

Saída

‘Inválido’
>>> indirect(2)

Saída

‘dois’
>>> indirect(1)

Saída

‘um’
>>> indirect(0.5)

Saída

‘Inválido’

b. Com o Python Classes

Usando este conceito com aulas nos permite escolher um método em tempo de execução.

>>> class Switcher(object): def indirect(self,i): method_name='number_'+str(i) method=getattr(self,method_name,lambda :'Invalid') return method() def number_0(self): return 'zero' def number_1(self): return 'one' def number_2(self): return 'two'>>> s=Switcher()>>> s.indirect(2)

Saída

‘dois’
>>> s.indirect(4)

Saída

‘Inválido’
>>> s.number_1()

Saída

‘um’

Então, isso foi tudo sobre Python Interruptor de Instrução do Caso. Espero que gostes do nosso tutorial.

perguntas de entrevistas em Python no Switch Case Statement

  1. O Python tem uma switch case statement?
  2. Como implementa um estojo de comutação em Python?
  3. O que é um caso em switch em Python?
  4. explique Python switch case statement com exemplo.
  5. quantos casos você pode ter na declaração switch em Python?

conclusão

portanto, concluímos que o Python não tem uma construção de switch-case incorporada, podemos usar um dicionário em vez disso.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *