Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #41016

Switch statement

From "Joseph L. Casale" <jcasale@activenetwerx.com>
Subject Switch statement
Date 2013-03-10 14:16 +0000
Newsgroups comp.lang.python
Message-ID <mailman.3155.1362925062.2939.python-list@python.org> (permalink)

Show all headers | View raw


I have a switch statement composed using a dict:


switch = {
    'a': func_a,
    'b': func_b,
    'c': func_c
}
switch.get(var, default)()


As a result of multiple functions per choice, it migrated to:



switch = {
    'a': (func_a1, func_a2),
    'b': (func_b1, func_b2),
    'c': (func_c, )
}



for f in switch.get(var, (default, )):
    f()


As a result of only some of the functions now requiring unique arguments, I presume this
needs to be migrated to a if/else statement? Is there a way to maintain the switch style with
the ability in this scenario to cleanly pass args only to some functions?


Thanks,
jlc

Back to comp.lang.python | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Switch statement "Joseph L. Casale" <jcasale@activenetwerx.com> - 2013-03-10 14:16 +0000
  Re: Switch statement Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-03-10 15:18 +0000
    RE: Switch statement "Joseph L. Casale" <jcasale@activenetwerx.com> - 2013-03-10 17:51 +0000
    Re: Switch statement Terry Reedy <tjreedy@udel.edu> - 2013-03-10 18:02 -0400

csiph-web