Como substituir a instrução switch com um dicionário em Python
A maioria das linguagens de programação (Python excluídos), fornecer algum tipo de instrução switch. A instrução switch prevê seleções de tipo de menu elegantes. O usuário tem uma série de opções, mas é permitido escolher apenas um deles. O programa leva algum curso de ação com base na seleção do usuário. Aqui está um código representativo (ele não vai executar) de um interruptor
Menu
- Abra uma janela do python arquivo.
- Digite o seguinte código para a janela - pressione enter após cada linha:
- Digite o seguinte código para a janela - pressione enter após cada linha:
- Digite o seguinte código para a janela - pressione enter após cada linha:
- Escolha run-run module.
- Tipo 0 e pressione enter.
- Tipo 4 e pressione enter.
switch (n) {case 0: print ( "Você selecionou azul.") - break-case 1: print ( ". Você selecionou amarelo") - break-case 2: print ( "Você selecionou verde".) - break- }
A aplicação normalmente apresenta uma interface do tipo de menu, obtém o número da seleção do usuário e, em seguida, escolhe o curso correto de ação a partir do interruptor declaração. É mais puro e muito mais fácil do que utilizando uma série de E se instruções para realizar a mesma tarefa.
Infelizmente, Python não vem com uma instrução switch. O melhor que você pode esperar fazer é usar um if ... elif declaração para a tarefa. No entanto, usando um dicionário, você pode simular o uso de uma instrução switch. Os passos seguintes ajudá-lo a criar um exemplo que irá demonstrar a técnica necessária.
Abra uma janela do Python Arquivo.
Você vê um editor no qual você pode digitar o código de exemplo.
Digite o seguinte código para a janela - pressione ENTER após cada linha:
def PrintBlue (): print ( "Você escolheu azul r n!") def PrintRed (): print ( "Você escolheu o vermelho r n") def PrintOrange (): print ( "Você escolheu laranja r n ") def PrintYellow (): print (" Você escolheu amarelo r n ")!
Antes de o código pode fazer nada por você, você deve definir as tarefas. Cada uma dessas funções define uma tarefa associada com a seleção de uma tela opção de cor. Apenas um deles é chamado a qualquer momento.
Digite o seguinte código para a janela - pressione ENTER após cada linha:
ColorSelect = {0: PrintBlue, 1: PrintRed, 2: PrintOrange, 3: PrintYellow}
Este código é a dicionário. Cada chave é como a parte caso da instrução switch. Os valores especificam o que fazer. Em outras palavras, esta é a estrutura do comutador. As funções que você criou anteriormente são a parte da ação do interruptor - a parte que vai entre a exposição do caso ea cláusula de rescisão.
Digite o seguinte código para a janela - pressione ENTER após cada linha:
Seleção = 0while (selecção = 4!): Print ( "0 Azul.") Print ( "1 Red.") Print ( "2 Orange.") Print ( "3 Amarelo.") Print ( "4 Sair".) seleção = int (input ( "Selecione uma opção de cor:")) if (seleção> = 0) e (selecção lt; 4): ColorSelect [Seleção] ()
Finalmente, você ver a parte de interface com o usuário do exemplo. O código começa criando uma variável de entrada, Seleção. Em seguida, ele entra em um loop até que o usuário insere um valor de 4.
Durante cada ciclo, o aplicativo exibe uma lista de opções e, em seguida, aguarda a entrada do usuário. Quando o usuário não fornecer dados, o aplicativo executa uma verificação de intervalo nele. Qualquer valor entre 0 e 3 selecciona uma das funções anteriormente definidas utilizando o dicionário como o mecanismo de comutação.
Escolha Run-Run Module.
Você verá uma janela aberta Python Shell. O aplicativo exibe um menu.
Tipo 0 e pressione Enter.
A aplicação diz-lhe que você selecionou azul e, em seguida, exibe o menu novamente.
Tipo 4 e pressione Enter.
A aplicação termina.