以下の with_next() のように、不定長のイテレータから連続する2つの要素を順番に取得するループを、出来る限りシンプルな、行数の少ないコードで実現するにはどうすればいいでしょうか。
よろしくお願いします。

def with_next(it):
    it = iter(it)
    prev = next(it)
    for n in it:
        yield prev,n
        prev = n

import itertools
for a in with_next(itertools.count()):
    print(a)
    if a[0]>10:
        break