|
@@ -1,9 +1,9 @@
|
|
|
#!/usr/bin/env python3
|
|
|
# depends (debian) python3-gdbm
|
|
|
-import dbm
|
|
|
import sys
|
|
|
import os
|
|
|
from pathlib import Path
|
|
|
+from gdbm_iter import gdbm_iter_keys as gdbm_iter_items
|
|
|
# from python 3.12 only :(
|
|
|
#from itertools import batched
|
|
|
|
|
@@ -24,11 +24,8 @@ def batched(_iter, n, pad=True):
|
|
|
yield ret
|
|
|
|
|
|
def gdbm_iter_keys(dbpath):
|
|
|
- with dbm.open(dbpath, 'r') as db:
|
|
|
- k = db.firstkey()
|
|
|
- while k is not None:
|
|
|
- yield map(lambda x: x.decode('utf-8'), [k, db.get(k)])
|
|
|
- k = db.nextkey(k)
|
|
|
+ for i in gdbm_iter_items(dbpath):
|
|
|
+ yield map(lambda x: x.decode('utf-8'), i)
|
|
|
|
|
|
members = {
|
|
|
k for k,_ in filter(
|