В модуле DBM есть команда для удаления значения, хранящегося в ключе.
del d[key] # delete data stored at key (raises KeyError # if no such key)
Но я даже не могу выполнить итерацию с помощью этой команды, потому что возникает ошибка времени выполнения (RuntimeError: словарь изменил размер во время итерации.)
import dbm
db=dbm.open("file.db","c")
for key in db:
del db[key]
print(len(db))
db.close()
Есть ли эффективный способ сразу очистить файл DMB? Я использую Python 3.3