On Sat, May 5, 2018 at 1:17 AM, Ian Kelly <ian.g.ke...@gmail.com> wrote:
> On Fri, May 4, 2018 at 7:01 AM, Steven D'Aprano
> <steve+comp.lang.pyt...@pearwood.info> wrote:
>> Here are the specifications:
>>
>> * you must use lambda, not def;
>
> Why? This seems like an arbitrary constraint.
>
> def itemgetter2(*items, default):
>     return lambda seq: tuple(get_default(seq, item, default) for item in 
> items)
>
> def get_default(seq, item, default):
>     try:
>         return seq[item]
>     except (IndexError, KeyError):
>         return default
>
> py> f = itemgetter2(1, 6, default="spam")
> py> f("Hello World!")
> ('e', 'W')
> py> f("Hello!")
> ('e', 'spam')

PEP 463 wants to say hello.

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to