Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 26, 2010 12:35:14

holysoul
От:
Зарегистрирован: 2010-01-19
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Вопрос по поводу распикливания объекта (экземпляра класса)

Есть класс, содержащий в себе некоторые функции. Например,

class A(object):

def __init__(s):
s.res = 0

def sum(s, a, b):
return s.res = a + b

def diff(s, a, b):
return s.res = a - b
Есть 2 разных модуля. В 1-м создаются экземпляры класса A и запикливаются в файл. Во 2-м модуле этот файл распикливается. Второй модуль также сожержит описание данного класса A. Однако функцию diff (например) второй модуль нигде не использует, и нигде в нем она не вызывается.

Вопрос следующий. Могу ли я удалить описание данной функции из второго модуля или нет?
Или может быть нужно во втором модуле описать ее так:

def diff(s, a, b):
pass



Отредактировано (Янв. 26, 2010 12:43:26)

Офлайн

#2 Янв. 26, 2010 16:08:39

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Вопрос по поводу распикливания объекта (экземпляра класса)

Технически можно. А на практике не нужно так делать. Pickle был создан, чтобы сериализовать и потом зачитывать объекты одного и того же типа. Лежащие в разделяемой библиотеке. Иначе можно легко словить “странное поведение”.



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version