#๐Ÿ”’ Is there something like the built-in `max` that returns the computed key as well as the actual val

4 messages ยท Page 1 of 1 (latest)

sweet parrot
#

It's easy enough to write my own:

def max_with_key(seq, key=None):
    # annoying that the built-in "max" won't do this for us
    if not seq:
        raise ValueError("max_with_key() arg is an empty sequence")

    if key is None:
        key = lambda x: x

    so_far = None
    for elt in seq:
        v = key(elt)
        if so_far is None or v > so_far[1]:
            so_far = (elt, v)

    return so_far

... but I feel like a chump having to do so.

wet basaltBOT
#

@sweet parrot

Python help channel opened

Remember to:

  • Ask your Python question, not if you can ask or if there's an expert who can help.
  • Show a code sample as text (rather than a screenshot) and the error message, if you've got one.
  • Explain what you expect to happen and what actually happens.

:warning: Do not pip install anything that isn't related to your question, especially if asked to over DMs.

wet basaltBOT
#

@sweet parrot

Python help channel closed

This help channel has been closed and it's no longer possible to send messages here. If your question wasn't answered, feel free to create a new post in #1035199133436354600. To maximize your chances of getting a response, check out this guide on asking good questions.