데이터가 잘 저장됐는지 확인해 보겠습니다. 앞에서 만든 파일을 다시 불러올 때는 load() 함수를 사용하고 전달값으로는 파일명을 넣습니다.
형식
load(불러올 파일명)
먼저 파일을 여는데, 바이너리 파일이므로 저장할 때와 마찬가지로 읽기 모드 r에 b를 붙여서 rb라고 작성합니다. 그러고 나서 load() 함수에 파일명을 전달하면 파일에서 데이터를 불러와 profile 변수에 그대로 저장합니다. 잘 불러왔는지 출력해 보고 이번에도 close() 함수로 파일을 닫아 줍니다.
import pickle # pickle 모듈 가져다 쓰기
profile_file = open("profile.pickle", "wb") # 바이너리 형태로 저장
profile = {"이름": "스누피", "나이": 30, "취미": ["축구", "골프", "코딩"]}
print(profile)
pickle.dump(profile, profile_file) # profile 데이터를 파일에 저장
profile_file.close()
profile_file = open("profile.pickle", "rb") # 읽어 올 때도 바이너리 형태 명시
profile = pickle.load(profile_file) # 파일에 있는 정보를 불러와서 profile에 저장
print(profile)
profile_file.close()
실행결과 |
{'이름': '스누피', '나이': 30, '취미': ['축구', '골프', '코딩']} {'이름': '스누피', '나이': 30, '취미': ['축구', '골프', '코딩']} |
실행해 보면 저장할 때와 동일한 데이터를 출력합니다.
1분 퀴즈
7. pickle 모듈로 데이터를 파일에 저장할 때 사용하는 함수는?
① dump()
② load()
③ push()
④ save()