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


Groups > comp.lang.python > #60628

Re: python for everyday tasks

Date 2013-11-27 11:15 -0700
From Michael Torrie <torriem@gmail.com>
Subject Re: python for everyday tasks
References <5737051f-26d4-4771-b4a0-d41062f1a4ef@googlegroups.com> <52900c74$0$29993$c3e8da3$5496439d@news.astraweb.com> <27721690.YBritT5ChT@melforce>
Newsgroups comp.lang.python
Message-ID <mailman.3313.1385576149.18130.python-list@python.org> (permalink)

Show all headers | View raw


On 11/27/2013 11:05 AM, Pavel Volkov wrote:
> Thanks for all those references.
> There's this statement in the first article:
> 
> "Got a switch statement? The Python translation is a hash table, not a bunch 
> of if-then statments. Got a bunch of if-then's that wouldn't be a switch 
> statement in Java because strings are involved? It's still a hash table. "
> 
> I can't figure out how would you translate a switch statement into hash table 
> in general case.

The general case is an if/elif ladder.  But consider:

def func1(): pass
def func2(): pass
def func3(): pass

dispatch = { 0: func1,
             1: func2,
             2: func3,
           }

# do some calc
result = somecalc()
try:
  dispatch[result]()
except KeyError:
  # invalid result

That's what the article is talking about.

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


Thread

python for everyday tasks koch.mate@gmail.com - 2013-11-22 15:59 -0800
  Re: python for everyday tasks Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-11-23 02:01 +0000
    Re: python for everyday tasks wxjmfauth@gmail.com - 2013-11-25 02:12 -0800
      Re: python for everyday tasks Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-11-25 13:33 +0000
      Re: python for everyday tasks Michael Torrie <torriem@gmail.com> - 2013-11-25 08:11 -0700
        Re: python for everyday tasks wxjmfauth@gmail.com - 2013-11-25 08:17 -0800
      Re: python for everyday tasks Chris Angelico <rosuav@gmail.com> - 2013-11-26 02:38 +1100
      Re: python for everyday tasks Ben Finney <ben+python@benfinney.id.au> - 2013-11-26 10:35 +1100
      Re: python for everyday tasks Chris Angelico <rosuav@gmail.com> - 2013-11-26 11:09 +1100
    Re: python for everyday tasks Pavel Volkov <negaipub@gmail.com> - 2013-11-27 22:05 +0400
    Re: python for everyday tasks Michael Torrie <torriem@gmail.com> - 2013-11-27 11:15 -0700
    Re: python for everyday tasks Chris Angelico <rosuav@gmail.com> - 2013-11-28 10:11 +1100
  Re: python for everyday tasks Ned Batchelder <ned@nedbatchelder.com> - 2013-11-22 18:32 -0800
  Re: python for everyday tasks Dan Stromberg <drsalists@gmail.com> - 2013-11-22 22:28 -0800
  Re: python for everyday tasks Dan Stromberg <drsalists@gmail.com> - 2013-11-22 22:36 -0800
  Re: python for everyday tasks Chris Angelico <rosuav@gmail.com> - 2013-11-23 18:25 +1100
    Re: python for everyday tasks koch.mate@gmail.com - 2013-11-23 16:54 -0800

csiph-web