Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 1, 2009 20:36:26

FILLIPO
От:
Зарегистрирован: 2009-05-03
Сообщения: 60
Репутация: +  0  -
Профиль   Отправить e-mail  

shelve непонятная ошибка

Здравствуйте! Помогите пожалуйста разобраться.

Застрял на фрагменте в учебнике:
Next, I take the idea of pickling one step further by shelving the lists together in a single file. Using the shelve module, I create a shelf that acts like a dictionary, which allows the lists to be accessed randomly.

First, I create a shelf, pickles:

print "\nShelving lists."
pickles = shelve.open("pickles2.dat")
Повторяю этот фрагмент в интерпретаторе:
import shelve 
shelve_it=shelve.open("D:\Python_programs\ordered_dump")
И получаю страшно длинную ошибку:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
shelve_it=shelve.open("D:\Python_programs\ordered_dump","c")
File "C:\Program Files\Python26\lib\shelve.py", line 234, in open
return DbfilenameShelf(filename, flag, protocol, writeback)
File "C:\Program Files\Python26\lib\shelve.py", line 218, in __init__
Shelf.__init__(self, anydbm.open(filename, flag), protocol, writeback)
File "C:\Program Files\Python26\lib\anydbm.py", line 80, in open
raise error, "db type could not be determined"
error: db type could not be determined
мне понятно только
error: db type could not be determined
а все остальное - нет


объясните пожалуйста



Отредактировано (Сен. 1, 2009 20:37:19)

Офлайн

#2 Сен. 1, 2009 21:54:34

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

shelve непонятная ошибка

Возможно для создания хранилища был использован один интерфейс, а при чтении происходит попытка открыть другим.



Отредактировано (Сен. 1, 2009 22:00:36)

Офлайн

#3 Сен. 1, 2009 22:13:27

neo08
От:
Зарегистрирован: 2008-08-01
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

shelve непонятная ошибка

А по моему должно быть вот так

import shelve 
shelve_it=shelve.open("D:\\Python_programs\\ordered_dump")
Не ‘\’ а ‘\\’



Офлайн

#4 Сен. 2, 2009 17:53:47

FILLIPO
От:
Зарегистрирован: 2009-05-03
Сообщения: 60
Репутация: +  0  -
Профиль   Отправить e-mail  

shelve непонятная ошибка

neo08, Ваш пример ведет к той же ошибке

Извините, сам заметил:
в примере

pickles = shelve.open("pickles2.dat")
а у меня расширение файла не проставлено.

после прописывания .dat ошибка ушла

Спасибо



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version