Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 6, 2007 13:24:59

pythonwin
От:
Зарегистрирован: 2006-07-18
Сообщения: 1294
Репутация: +  0  -
Профиль   Отправить e-mail  

последняя запись-объект в файле pickle

добрый день!
как можно максимально быстро получить последний элемент из файла записанного через pickle и узнать число записей-объектов в этом файле?

file1=open(filename,'r')
t=False
dict1={}
k=0
while not t:
    try:
        dict1 = pickle.load(file1)
    except:
        t=True
    if not dict1:
        t=True
    else:
        k+=1
print dict1, k
file1.close()



Офлайн

#2 Апрель 6, 2007 22:53:54

Pelmen
От:
Зарегистрирован: 2007-03-31
Сообщения: 44
Репутация: +  0  -
Профиль   Отправить e-mail  

последняя запись-объект в файле pickle

может надо что-то вроде индекса использовать?



Офлайн

#3 Апрель 7, 2007 10:47:57

pythonwin
От:
Зарегистрирован: 2006-07-18
Сообщения: 1294
Репутация: +  0  -
Профиль   Отправить e-mail  

последняя запись-объект в файле pickle

Pelmen, ты про file1.seek(-1,2) ?
это работать не будет :(



Офлайн

#4 Апрель 8, 2007 00:02:35

Pelmen
От:
Зарегистрирован: 2007-03-31
Сообщения: 44
Репутация: +  0  -
Профиль   Отправить e-mail  

последняя запись-объект в файле pickle

pythonwin
Pelmen, ты про file1.seek(-1,2) ?
это работать не будет :(
нет, я про инструмент который самому написать



Офлайн

#5 Апрель 9, 2007 00:22:52

dvs
От:
Зарегистрирован: 2006-05-22
Сообщения: 176
Репутация: +  3  -
Профиль   Отправить e-mail  

последняя запись-объект в файле pickle

Если не устраивает скорость http://forum.vingrad.ru/topic-144913/anchor-entry1089906.html
то может что-то из (
Durus http://www.mems-exchange.org/software/durus/,
Axiom http://www.divmod.org/,
PyPersyst http://pypersyst.org/,
COG http://itamarst.org/software/cog/ )
подойдёт?



Отредактировано (Апрель 9, 2007 00:23:57)

Офлайн

#6 Апрель 9, 2007 06:15:25

Striver
От:
Зарегистрирован: 2006-10-26
Сообщения: 247
Репутация: +  22  -
Профиль   Отправить e-mail  

последняя запись-объект в файле pickle

Pelmen
может надо что-то вроде индекса использовать?
Я так понял имеется ввиду, что надо все объекты сначала загонять в один список, а потом уже в pickle-файл. Тогда, загрузив этот список обратно, и до последнего элемента быстро добраться, и посчитать объекты.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version