본문으로 건너뛰기

파이썬 객체를 파일로 직렬화하는 방법

파일로 Python 객체를 직렬화하는 방법.

Python 객체를 파일로 직렬화하는 방법에 대한 단계별 튜토리얼입니다:

단계 1: 필요한 모듈 가져오기

시작하기 위해 직렬화 및 역직렬화를 할 수 있게 해주는 Python의 내장 모듈인 pickle 모듈을 가져와야 합니다.

import pickle

단계 2: 직렬화할 객체 정의하기

다음으로, 직렬화하려는 객체를 정의해야 합니다. 이는 사전(dictionary), 리스트(list) 또는 사용자 정의 클래스와 같은 모든 유효한 Python 객체일 수 있습니다.

예를 들어, 사전을 직렬화하려면 다음과 같이 정의할 수 있습니다:

data = {
'name': 'John Doe',
'age': 25,
'email': 'johndoe@example.com'
}

단계 3: 객체를 파일로 직렬화하기

이제 pickle.dump() 메서드를 사용하여 객체를 파일로 직렬화할 수 있습니다. 이 메서드는 두 개의 인수를 받습니다: 직렬화하려는 객체와 직렬화된 데이터를 작성할 파일 객체입니다.

with open('data.pickle', 'wb') as file:
pickle.dump(data, file)

이 예제에서는 data.pickle라는 이름의 파일을 이진 쓰기 모드('wb')로 열고 pickle.dump()을 사용하여 직렬화된 data 객체를 파일에 작성합니다.

참고: .pickle 확장자는 일반적으로 직렬화된 객체에 사용되지만, 선호하는 파일 확장자를 사용할 수 있습니다.

단계 4: 파일에서 객체 역직렬화하기

파일에서 객체를 역직렬화하고 원래 데이터를 검색하기 위해 pickle.load() 메서드를 사용할 수 있습니다. 이 메서드는 파일 객체를 인수로 받고 역직렬화된 객체를 반환합니다.

with open('data.pickle', 'rb') as file:
deserialized_data = pickle.load(file)

이 예제에서는 이진 읽기 모드('rb')로 data.pickle 파일을 열고 pickle.load()을 사용하여 파일에 저장된 객체를 역직렬화합니다. 역직렬화된 객체는 deserialized_data 변수에 할당됩니다.

단계 5: 역직렬화된 객체 확인하기

마지막으로, 역직렬화된 객체가 원래 데이터와 일치하는지 확인하기 위해 그 내용을 인쇄할 수 있습니다.

print(deserialized_data)

이렇게 하면 역직렬화된 객체가 출력되며, 이는 원래 data 객체와 동일해야 합니다:

{'name': 'John Doe', 'age': 25, 'email': 'johndoe@example.com'}

이것으로 끝났습니다! Python 객체를 파일로 성공적으로 직렬화하고 그것을 역직렬화하여 원래 데이터를 검색하는 방법을 알게 되었습니다.

pickle 모듈을 가져오고, 객체를 정의하고, pickle.dump()을 사용하여 파일에 직렬화하고, pickle.load()를 사용하여 파일에서 역직렬화하는 것을 기억하세요.