mirror of
https://github.com/simonw/sqlite-utils.git
synced 2026-08-01 23:14:12 +02:00
sqlite-utils json dogs.db "select * from dogs"
This commit is contained in:
parent
7689ca7229
commit
5466c9745d
4 changed files with 158 additions and 6 deletions
28
sqlite_utils/utils.py
Normal file
28
sqlite_utils/utils.py
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
def iter_pairs(iterator):
|
||||
# Yields (item, next_item, is_last) pairs
|
||||
# Last row is (item, None, True)
|
||||
first = True
|
||||
next_item = None
|
||||
while True:
|
||||
next_done = False
|
||||
if first:
|
||||
item, done = next_with_done(iterator)
|
||||
if done:
|
||||
break
|
||||
next_item, next_done = next_with_done(iterator)
|
||||
first = False
|
||||
else:
|
||||
item = next_item
|
||||
next_item, next_done = next_with_done(iterator)
|
||||
|
||||
yield item, next_item, next_done
|
||||
|
||||
if next_done:
|
||||
break
|
||||
|
||||
|
||||
def next_with_done(iterator):
|
||||
try:
|
||||
return next(iterator), False
|
||||
except StopIteration:
|
||||
return None, True
|
||||
Loading…
Add table
Add a link
Reference in a new issue