2012-07-14 19 views
241

Bilmek istiyorum, VB.net veya C# üzerinde bulunan örnekler gibi durum ifadesi için bir Python eşdeğeri var mı?Bir vaka/anahtar ifadesi için Python eşdeğeri nedir?

+2

İkinci soru bir takip değildir ve hatta takipler ayrı sorular olarak gönderilmelidir. Buna ek olarak, konu dışı ve programmers.stackexchange.com devam etmelidir. Ve, ilk sorunun bir kopyası. –

cevap

355

official docs anahtar sağlamayacak olsa da, bir solution using dictionaries görmüşsünüz. Örneğin

: Sonra eşdeğer anahtar bloğu çağrılır

# 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]() 

Bu ağır aracılığıyla sonbahar bağlıdır eğer dağılmaya başlar.

+12

Sözlük, – flexxxit

+0

@MortezaLSC işlev tanımlarından sonra gelmelidir, eğer tam sayıları işlevlere eşlerseniz, tırnaklara ihtiyacınız olmaz. –

+0

@Prashant Kumar, python 2.7.6 kullanıyorum ve hata yaptım! +1 – MLSC