[Python] sviluppare applicazioni android tramite python

Giovanni Porcari giovanni.porcari a softwell.it
Sab 31 Dic 2011 07:35:27 CET


Il giorno 30/dic/2011, alle ore 15:50, Giuseppe Amato ha scritto:

> 3. usare una classe (o al limite un modulo)
> 
> class Dispatch(object):
>    def a(...): ...
> 
>    def b(...): ...
>    ...
> 
> getattr(Dispatch(), k)()

Dal momento che il problema di uno switch capita comunque 
quasi sempre all interno di una classe una tecnica abbastanza
comoda è quella di usare dei metodi con opportuno prefisso
ad esempio:

def foo_alfa(self,...):
    .....

def foo_beta(self,...):
    .....

def foo_gamma(self,...):
    .....

def foo_default(self,...):
    .....

e nel codice chiamare
    bar = getattr(self,'foo_%s'%k,self.foo_default)(....)

Aggiungere i casi è molto semplice e in caso di ereditarietà
la classe derivata può agevolmente estendere lo switch.


G


Maggiori informazioni sulla lista Python