Avoiding if..elsif statements

unexpected sumesh.chopra at gmail.com
Fri Aug 25 18:36:16 EDT 2006


I have a program where based on a specific value from a dictionary, I
call a different function. Currently, I've implemented a bunch of
if..elsif statements to do this, but it's gotten to be over 30 right
now and has gotten rather tedious. Is there a more efficient way to do
this?

Code:

value = self.dictionary.get(keyword)[0]

if value == "something":
    somethingClass.func()
elsif value == "somethingElse":
    somethingElseClass.func()
elsif value == "anotherthing":
    anotherthingClass.func()
elsif value == "yetanotherthing":
    yetanotherthingClass.func()

Is it possible to store these function calls in a dictionary so that I
could just call the dictionary value?




More information about the Python-list mailing list