앎을 경계하기

Programming/Python

Python 객체 파일에 저장하기

양갱맨 2020. 1. 1. 22:58

참고 자료 : https://dojang.io/mod/page/view.php?id=2327

 

파이썬 코딩 도장: 27.3 파이썬 객체를 파일에 저장하기, 가져오기

파일에서 문자열만 읽고 쓴다면 조금 불편하겠죠? 파이썬은 객체를 파일에 저장하는 pickle 모듈을 제공합니다. 다음과 같이 파이썬 객체를 파일에 저장하는 과정을 피클링(pickling)이라고 하고, 파일에서 객체를 읽어오는 과정을 언피클링(unpickling)이라고 합니다. ▼ 그림 27-3 피클링과 언피클링 27.3.1  파이썬 객체를 파일에 저장하기 그럼 파이썬 객체를 파일에 저장하는 피클링을 해보겠습니다. 피클링은 pickle 모듈의 dump 메서

dojang.io

 

파이썬 객체를 파일에 저장하는 과정을 pickling, 읽는 과정을 unpickling이라고한다.

파이썬 객체 파일에 저장하기 - pickling

import pickle

name = 'james'
age = 17
address = '서울시 서초구 반포동'
scores = {'korean':90, 'english':95, 'mathematics':85, 'science': 82}

with open('james.p', 'wb') as file:
    pickle.dump(name, file)
    pickle.dump(age, file)
    pickle.dump(address, file)
    pickle.dump(scores, file)

소스 코드 실행 시, .py 파일이 있는 폴더에 james.p가 생성된다.

p말고 다른 확장자를 사용해도 상관 없다.

pickle.dump()로 객체를 저장할 때 파일 모드를 'wb'로 지정해야한다.

파이썬 객체 파일에 저장하기 - unpickling

import pickle

with open('james.p', 'rb') as file:
    name = pickle.load(file)
    age = pickle.load(file)
    address = pickle.load(file)
    scores = pickle.load(file)
    print(name)
    print(age)
    print(addres)
    print(scores)

pickle.dump()를 사용한 수만큼 load를 해야한다.

반환하는 값은 dump()로 저장한 순서대로 반환한다.

'Programming > Python' 카테고리의 다른 글

Python N-gram 생성  (0) 2020.01.02
Python Palindrome(회문) 판별  (0) 2020.01.02
Python 내장 함수  (0) 2019.12.26
Python 예외 처리  (0) 2019.12.26
Python 클래스 상속  (0) 2019.12.26