Python에서 영구 객체를 구현하려면 다음 라이브러리를 사용하세요.
"선반"은 지속적이고 사전 같은 객체입니다. "dbm" 데이터베이스와의 차이점은 선반의 값(키가 아님!)이 본질적으로 모든 Python 객체(피클 모듈이 처리할 수 있는 모든 것)일 수 있다는 것입니다. 여기에는 대부분의 클래스 인스턴스, 재귀적 데이터 유형 및 다수의 공유 하위 객체를 포함하는 객체가 포함됩니다.
몇 가지 핵심 방법이 있습니다 -
shelve.open() - 영구 사전을 엽니다. 지정된 파일 이름은 기본 데이터베이스의 기본 파일 이름입니다. 부작용으로 파일 이름에 확장자가 추가되어 여러 파일이 생성될 수 있습니다. 기본적으로 기본 데이터베이스 파일은 읽고 쓰기 위해 열립니다.
shelve.sync() − 쓰기 저장이 True로 설정된 상태에서 선반이 켜지면 캐시의 모든 항목이 다시 기록됩니다. 가능하다면 캐시도 플러시되고 영구 사전이 디스크의 데이터와 동기화됩니다. 이 메서드는 close()를 사용하여 선반을 닫을 때 자동으로 호출됩니다.
shelve.close() − 영구 사전 개체를 동기화하고 닫습니다.
pickle 모듈은 Python 객체 직렬화 및 역직렬화를 위한 바이너리 프로토콜을 구현합니다. 구조.
Pickling 은 Python 객체 계층을 바이트로 변환하는 프로세스입니다. 흐름. 객체 계층을 직렬화하려면 dump() 함수를 호출하기만 하면 됩니다.
Unpickling은 반대 작업입니다. 바이트 객체와 같은 바이너리 파일이나 바이트 스트림에서 구문 분석됩니다. 이를 개체 계층 구조로 다시 변환합니다. 데이터 스트림을 역직렬화하려면 load() 함수를 호출합니다. 기능.
피클 모듈이 제공하는 기능은 다음과 같습니다.
pickle.dump() - 객체의 피클 표현을 열린 파일 객체 파일에 씁니다.
pickle.dumps() − 객체의 피클 표현을 대신 바이트 객체로 반환합니다. 파일에 씁니다.
pickle.load() - 열린 파일 개체 파일에서 개체의 피클 표현을 읽습니다.
pickle.loads() - 피클된 데이터 표현의 재구성된 객체 계층 구조를 반환합니다. 객체의
먼저 피클 모듈을 가져옵니다 -
으아아아피클링을 위해 다음과 같은 입력을 만들었습니다.
으아아아demo.pickle 파일이 생성되었습니다. 이 동일한 .pickle 파일은 위 목록으로 피클됩니다.
으아아아이제 위의 피클된 파일을 unpickle하고 입력 값을 가져옵니다.
으아아아이제 전체 예를 살펴보겠습니다.
으아아아위 내용은 Python에서 영구 객체를 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!