优雅代码try...except...

try:
    from _heapq import *
except ImportError:
    pass

  

    # When n>=size, it's faster to use sorted()
    try:
        size = len(iterable)
    except (TypeError, AttributeError):
        pass
    else:
        if n >= size:
            return sorted(iterable, key=key)[:n]

  

    for order, it in enumerate(map(iter, iterables)):
        try:
            next = it.__next__
            value = next()
            h_append([key(value), order * direction, value, next])
        except StopIteration:
            pass
    _heapify(h)

  来自 heapq.py

 

posted @ 2023-06-22 21:04  sangern  阅读(16)  评论(0)    收藏  举报