Moduł serializacji obiektów dla języka Python. Użyj tego tagu razem z tagiem Python w przypadku pytań związanych z przechowywaniem lub ładowaniem obiektów za pomocą Pickle.
Przejrzałem informacje podane w dokumentach Pythona , ale wciąż jestem trochę zdezorientowany. Czy ktoś mógłby napisać przykładowy kod, który napisałby nowy plik, a następnie użyć zalewy, aby wrzucić do niego słownik?
Przykro mi, że nie mogę odtworzyć błędu na prostszym przykładzie, a mój kod jest zbyt skomplikowany, aby go opublikować. Jeśli uruchomię program w powłoce IPython zamiast zwykłego Pythona, wszystko zadziała dobrze. Przejrzałem kilka wcześniejszych notatek na ten temat. Wszystkie zostały spowodowane przez użycie puli do wywołania funkcji zdefiniowanej w funkcji …
Używam python3.3 i mam tajemniczy błąd podczas próby marynowania prostego słownika. Oto kod: import os import pickle from pickle import * os.chdir('c:/Python26/progfiles/') def storvars(vdict): f = open('varstor.txt','w') pickle.dump(vdict,f,) f.close() return mydict = {'name':'john','gender':'male','age':'45'} storvars(mydict) i dostaję: Traceback (most recent call last): File "C:/Python26/test18.py", line 31, in <module> storvars(mydict) File "C:/Python26/test18.py", …
Próbuję użyć multiprocessing„s Pool.map()funkcję podzielenie prac jednocześnie. Gdy używam następującego kodu, działa dobrze: import multiprocessing def f(x): return x*x def go(): pool = multiprocessing.Pool(processes=4) print pool.map(f, range(10)) if __name__== '__main__' : go() Jednak gdy używam go w podejściu bardziej obiektowym, to nie działa. Wyświetlany komunikat o błędzie to: PicklingError: Can't …
Jestem przyzwyczajony do wprowadzania i wyprowadzania danych z Pythona za pomocą plików .csv, ale są oczywiste wyzwania. Wszelkie porady na temat prostych sposobów przechowywania słownika (lub zestawów słowników) w pliku json lub pck? Na przykład: data = {} data ['key1'] = "keyinfo" data ['key2'] = "keyinfo2" Chciałbym wiedzieć, jak to …
Próbuję utworzyć reprezentację ciągu JSON wystąpienia klasy i mam trudności. Powiedzmy, że klasa jest zbudowana w następujący sposób: class testclass: value1 = "a" value2 = "b" Wywołanie json.dumps odbywa się w następujący sposób: t = testclass() json.dumps(t) Nie udaje się i mówi mi, że klasa testowa nie jest serializowalna w …
Kiedy biegnę coś takiego: from multiprocessing import Pool p = Pool(5) def f(x): return x*x p.map(f, [1,2,3]) to działa dobrze. Jednak umieszczając to jako funkcję klasy: class calculate(object): def run(self): def f(x): return x*x p = Pool() return p.map(f, [1,2,3]) cl = calculate() print cl.run() Daje mi następujący błąd: Exception …
Próbuję załadować zestaw danych MNIST połączony tutaj w Pythonie 3.2 za pomocą tego programu: import pickle import gzip import numpy with gzip.open('mnist.pkl.gz', 'rb') as f: l = list(pickle.load(f)) print(l) Niestety daje mi błąd: Traceback (most recent call last): File "mnist.py", line 7, in <module> train_set, valid_set, test_set = pickle.load(f) UnicodeDecodeError: …
Zastanawiam się, czy istnieje sposób na załadowanie obiektu, który został wytrawiony w Pythonie 2.4 za pomocą Pythona 3.4. Używałem 2to3 na dużej ilości starszego kodu firmy, aby go zaktualizować. Po wykonaniu tej czynności podczas uruchamiania pliku pojawia się następujący błąd: File "H:\fixers - 3.4\addressfixer - 3.4\trunk\lib\address\address_generic.py" , line 382, in …
Szukam szybkiego sposobu na zachowanie dużych, zdrętwiałych tablic. Chcę je zapisać na dysku w formacie binarnym, a następnie stosunkowo szybko wczytać z powrotem do pamięci. Niestety, cPickle nie jest wystarczająco szybki. Znalazłem numpy.savez i numpy.load . Ale dziwne jest to, że numpy.load ładuje plik npy do "mapy pamięci". Oznacza to, …
Muszę zapisać na dysku mały dictobiekt, którego klucze są typu stri wartości ints, a następnie odzyskać go . Coś takiego: {'juanjo': 2, 'pedro':99, 'other': 333} Jaka jest najlepsza opcja i dlaczego? Serializować go z pickleczy z simplejson? Używam Pythona 2.6.
Próbuję zapisywać i ładować obiekty za pomocą picklemodułu. Najpierw deklaruję moje obiekty: >>> class Fruits:pass ... >>> banana = Fruits() >>> banana.color = 'yellow' >>> banana.value = 30 Następnie otwieram plik o nazwie „Fruits.obj” (wcześniej utworzyłem nowy plik .txt i zmieniłem nazwę „Fruits.obj”): >>> import pickle >>> filehandler = open(b"Fruits.obj","wb") …
Otrzymuję ciekawy błąd podczas próby użycia Unpickler.load(), oto kod źródłowy: open(target, 'a').close() scores = {}; with open(target, "rb") as file: unpickler = pickle.Unpickler(file); scores = unpickler.load(); if not isinstance(scores, dict): scores = {}; Oto śledzenie: Traceback (most recent call last): File "G:\python\pendu\user_test.py", line 3, in <module>: save_user_points("Magix", 30); File "G:\python\pendu\user.py", …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.