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

declaração que você pode encontrar em outro idioma:

switch (n) {case 0: print ("Você selecionou azul.") -break-case 1: print ("Você selecionou amarelo.") -break-case 2: print ("Você selecionou verde.")-pausa-}

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 simples e muito mais do que usar uma série de E se declaraçõ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.

1Abra uma janela do Python Arquivo

Você vê um editor no qual você pode digitar o código de exemplo.

2Digite o seguinte código para a janela - pressione ENTER após cada linha:

def PrintBlue (): print ("Você escolheu azul rn!") Def PrintRed (): print ("Você escolheu rn! Vermelho") Def PrintOrange (): print ("Você escolheu laranja! Rn") Def PrintYellow (): print ("Você escolheu amarelo rn!")

Antes do código pode fazer qualquer coisa para você, você deve definir as tarefas. Cada uma destas funções define uma tarefa associada com a seleção de uma tela opção de cor. Apenas um deles é chamado a qualquer momento.

3Digite 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 é o dicionário. Cada chave é como a parte caso da instrução switch. Os valores especificar o que fazer. Em outras palavras, esta é a estrutura switch. As funções que você criou anteriormente são a parte da ação do interruptor - a parte que vai entre a declaração caso ea cláusula de rescisão.

4Digite o seguinte código para a janela - pressione ENTER após cada linha:

Seleção = 0while (Selecção = 4!): Print ("0. azul")impressão("1. Red")impressão("2. Laranja")impressão("3. Amarelo")impressão("4. Saia") Selecção = int (entrada ("Selecione uma opção de cor: ")) If (Selecção gt; = 0) e (Selecção lt; 4): ColorSelect [Selecção] ()

Finalmente, você vê a parte interface de usuário do exemplo. O código começa com a criação de uma variável de entrada, Seleção. É, em seguida, entra num ciclo até que o utilizador introduz 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.

445658.medium.jpg

5Escolha Executar → Run Module

Você verá uma janela aberta Python Shell. O aplicativo exibe um menu.

445659.medium.jpg

6Tipo 0 e pressione Enter

A aplicação diz-lhe que você selecionou azul e, em seguida, exibe o menu novamente.

7Tipo 4 e pressione Enter

A aplicação termina.


Publicações relacionadas