gert wrote:
Can anybody show me a better looking alternative for this elif
structure ?
http://code.google.com/p/appwsgi/source/browse/appwsgi/wsgi/appointment.wsgi
Where you have cascaded ifs based on a single value, one alternative is
to use a dict where the test value is the key and functions are the
values:
def do_overview():
db.execute("SELECT calendar,appointment FROM appointments WHERE
calendar >= ? AND calendar < ?",(v['from'],v['to']))
def do_find():
db.execute("SELECT users.name, appointments.* FROM users,
appointments WHERE users.uid = appointments.uid AND
appointments.calendar >= ? AND appointments.appointment LIKE ? GROUP BY
appointments.aid",(v['calendar'],"%"+v['appointment']+"%"))
...
actions = {'overview': do_overview, 'find': find, ...}
actions[v['cmd']]()
Your code does have an 'if' which breaks the pattern, but you might be
able to work around it.
--
http://mail.python.org/mailman/listinfo/python-list