# 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,
}
直接替换是
if
/elif
/else
。然而,在许多情况下,有更好的方法可以在Python中实现。见“Replacements for switch statement in Python?”。
虽然official docs很高兴不提供开关,但我看到了solution using dictionaries。
例如:
然后调用等效的开关块:
如果你在很大程度上依赖于失败,这将开始崩溃。
相关问题 更多 >
编程相关推荐