Python

데이터 피클하기 (pickle)

Yokina 2017. 1. 30. 16:58

피클 (pickle) 의 표준 라이브러리는 리스트뿐만 아니라 모든 파이썬 데이터 객체를 저장하고 읽을 수 있다.


dump 로 저장하고 load로 읽는다.

import pickle

with open('mydata.pickle', 'wb') as mysavedata : 
     pickle.dump([1,2,'three'], mysavedata)
with open('mydata.pickle', 'rb') as myrestoredata : 
     a_list = pickle.load(myrestoredata)

print(a_list)

피클 파일로 작업할 때는 이진 접근 모드로 열어야 한다(b)


pickle 모듈은 PickleError 형의 예외를 발생 시킨다.

import pickle
try : 
     with open('a.txt', 'wb') as a_file, open('b.txt', 'wb') as b_file :
          pickle.dump(a_list, a_file)
          pickle.dump(b_list, b_file)
except IOError as err : 
     print('File error : ' + str(err))
except pickle.PickleError as perr : 
     print('Pickling error : ' + str(perr))