Предположим, у меня есть простое определение класса python в файле myClass.py
class Test:
A = []
А еще у меня есть два тестовых скрипта. Первый сценарий создает объект типа Test, заполняет массив A и записывает результат в файл. Он немедленно извлекает его из файла, и массив по-прежнему заполняется. Второй скрипт просто распаковывает из файла, и массив не заполняется (т.е. A == []). Почему это?
test1.py
import myClass
import pickle
x = myClass.Test()
for i in xrange(5):
x.A.append(i)
f = open('data', 'w')
pickle.dump(x,f)
f.close()
f = open('data')
y = pickle.load(f)
f.close
print y.A
и test2.py
import myClass
import pickle
f = open('data')
y = pickle.load(f)
f.close
print y.A