else-if est une mauvaise pratique, car ils ne sont pas sûrs quand ils deviennent trop longs et impliquent des branchements conditionnels inutiles (affectant peut-être le compilateur/la mise en cache).
essayer ...
class Functions():
@staticmethod
def func():
print("so - foo")
@staticmethod
def funcWithArgs(junk):
print(junk, "foo")
# fill in your cases here...
cases = {
"a" : Functions.func ,
"b" : Functions.funcWithArgs ,
"c" : Functions.funcWithArgs
}
def switch(ch, cases, *args):
try:
len(*args) # empty args
except TypeError:
return cases[ ch ]()
return cases[ ch ](*args)
# try out your switch...
switch("a", cases) # "so - foo"
switch("b", cases, "b -") # "b - foo"
switch("c", cases, "c -") # "c - foo"
Essayez-vous de faire [{ '0': 'Off', '1': 'On'}. Get (b) b dans "01101101"] – joeforker