Avoiding if..elsif statements

Ghalib Suleiman ghalib at sent.com
Sat Aug 26 11:29:17 EDT 2006


Try it and see. Functions are first-class citizens in Python.

On Aug 25, 2006, at 6:36 PM, unexpected wrote:

> 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?
>
> -- 
> http://mail.python.org/mailman/listinfo/python-list




More information about the Python-list mailing list