Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #66642
| From | Terry Reedy <tjreedy@udel.edu> |
|---|---|
| Subject | Re: Bad Code Snippet of the Day |
| Date | 2014-02-18 15:41 -0500 |
| References | <CAPTjJmqAAG+oxKKq=fDEA4bDHTcDO5dXZbJgR3VK98fg9xwC1Q@mail.gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.7122.1392756159.18130.python-list@python.org> (permalink) |
On 2/18/2014 11:47 AM, Chris Angelico wrote:
> I call this "Russian Exception Roulette". It came about because of
> some discussions on python-ideas regarding the new PEP 463 and
> exception handling.
>
> try:
> exc = getattr(__builtins__,random.choice(list(filter(lambda x:
> x.endswith("Error"),dir(__builtins__)))))
> f()
> except exc:
> print("You win!")
>
> Given a function f(), defined elsewhere, what will this do?
I am not sure what you are asking or what your point is. If f happens to
raise the randomly selected exception, it prints 'You win!', otherwise
it does nothing.
> Note that this was developed on Python 3.4, and some of the details
> may be different on other versions (especially 2.x).
--
Terry Jan Reedy
Back to comp.lang.python | Previous | Next — Next in thread | Find similar | Unroll thread
Re: Bad Code Snippet of the Day Terry Reedy <tjreedy@udel.edu> - 2014-02-18 15:41 -0500 Re: Bad Code Snippet of the Day Roy Smith <roy@panix.com> - 2014-02-18 20:13 -0500
csiph-web