shelve¶
Модуль shelve преобразует объект в последовательность байтов, которая может быть записана в файл, а потом прочитана из файла, сохраняет объекты в базе данных, своей структурой напоминающей словарь.
>>> import shelve
>>> db = shelve.open(“filename”)
>>> db[‘key’] = obj
>>> obj = db[‘key’]
>>> db.close()
-
shelve.
open
(filename[, flag='c'][, protokol=None][, writeback=False])¶ - Parameters
filename – файловый объект для хранения
protokol – протокол сохранения
flag (str) – режим открытия файла (r - чтение, w - чтение и запись, с - чтение и запись (+ создание), n - чтение и запись (+ создание или перезапись))
возвращает обект, БД, который похож на словарь и имеет следующие методы
-
shelve.
clear
()¶ очищает БД
-
shelve.
close
()¶ закрывает БД
-
shelve.
get
(key[, default=None])¶ возвращает значение по ключу, если ключа нет, дефолтное значение
-
shelve.
items
()¶ возвращает список кортежей, ключ и значение
Changed in version 3.x: возвращает объект итератор
-
shelve.
keys
()¶ возвращает список ключей
Changed in version 3.x: возвращает объект итератор
-
shelve.
pop
(key[, default])¶ Возвращает значение по ключу, удалив запись из БД.
Если ключа нет, возвращается указанное дефолтное значение.
Если ключа нет и не указано дефолтное значение, возбуждается исключение KeyError
-
shelve.
popitem
()¶ Возвращает случайную пару (ключ, значение) из БД, удаляя его из БД
Если БД пустая, возбуждается исключение KeyError
-
shelve.
setdefault
(<Ключ>[, <Значение по умолчанию>=None])¶ Возвращает значение по ключу, если такого ключа нет, то возвращается дефолтное значение, при этом добавив новую запись.
-
shelve.
update
(key=value)¶
-
shelve.
update
(dict)
-
shelve.
update
([(key, value)])
-
shelve.
update
(((key, value), )) Обновляет БД.
-
shelve.
values
()¶ возвращает список со значениями
Changed in version 3.x: возвращает объект итератор