Что такое эквивалент Python для оператора case / switch?

Я хотел бы знать, есть ли эквивалент Python для оператора case, например, примеры, доступные на VB.net или C #?

  • Может ли оператор switch иметь более одной переменной?
  • ключи переключения и значения в словаре в python
  • У Python есть эквивалент «switch»?
  • Замены для оператора switch в Python?
  • Словарь или инструкции if, Jython
  • Словарь Python vs Если скорость сообщения
  • Выбор между различными заменами ключей в Python - словаре или if-elif-else?
  • 2 Solutions collect form web for “Что такое эквивалент Python для оператора case / switch?”

    Хотя официальные документы с удовольствием не предоставляют коммутатор, я видел решение, использующее словари .

    Например:

    # define the function blocks def zero(): print "You typed zero.\n" def sqr(): print "n is a perfect square\n" def even(): print "n is an even number\n" def prime(): print "n is a prime number\n" # map the inputs to the function blocks options = {0 : zero, 1 : sqr, 4 : sqr, 9 : sqr, 2 : even, 3 : prime, 5 : prime, 7 : prime, } 

    Затем вызывается эквивалентный блок переключателя:

     options[num]() 

    Это начинает разваливаться, если вы сильно зависите от падения.

    Прямая замена – if / elif / else .

    Однако во многих случаях есть лучшие способы сделать это в Python. См. « Замены для оператора switch в Python? ».

    Python - лучший язык программирования в мире.