Python 데이터 지속성-dbm 패키지
dbm 패키지는 인터페이스 DBM 스타일 데이터베이스와 같은 사전을 제공합니다. DBM stands for DataBase Manager. 이것은 UNIX (및 UNIX 유사) 운영 체제에서 사용됩니다. dbbm 라이브러리는 Ken Thompson이 작성한 간단한 데이터베이스 엔진입니다. 이러한 데이터베이스는 이진 인코딩 문자열 객체를 키와 값으로 사용합니다.
데이터베이스는 고정 된 크기의 버킷에 단일 키 (기본 키)를 사용하여 데이터를 저장하고 해싱 기술을 사용하여 키별로 데이터를 빠르게 검색 할 수 있습니다.
dbm 패키지에는 다음 모듈이 포함되어 있습니다.
dbm.gnu 모듈은 GNU 프로젝트에 의해 구현 된 DBM 라이브러리 버전에 대한 인터페이스입니다.
dbm.ndbm 모듈은 UNIX nbdm 구현에 대한 인터페이스를 제공합니다.
dbm.dumb이벤트에서 대체 옵션으로 사용되며 다른 dbm 구현은 찾을 수 없습니다. 이것은 외부 종속성이 필요하지 않지만 다른 것보다 느립니다.
>>> dbm.whichdb('mydbm.db')
'dbm.dumb'
>>> import dbm
>>> db=dbm.open('mydbm.db','n')
>>> db['name']=Raj Deshmane'
>>> db['address']='Kirtinagar Pune'
>>> db['PIN']='431101'
>>> db.close()
open () 함수는 이러한 플래그 모드를 허용합니다-
Sr. 아니. | 가치 및 의미 |
---|---|
1 | 'r' 읽기 전용으로 기존 데이터베이스 열기 (기본값) |
2 | 'w' 읽기 및 쓰기를 위해 기존 데이터베이스 열기 |
삼 | 'c' 읽고 쓰기 위해 데이터베이스를 열고 존재하지 않는 경우 생성 |
4 | 'n' 항상 비어있는 새 데이터베이스를 만들고 읽고 쓰기 위해 엽니 다. |
dbm 객체는 선반 객체와 마찬가지로 객체와 같은 사전입니다. 따라서 모든 사전 작업을 수행 할 수 있습니다. dbm 객체는 get (), pop (), append () 및 update () 메서드를 호출 할 수 있습니다. 다음 코드는 'r'플래그와 함께 'mydbm.db'를 열고 키-값 쌍의 수집을 반복합니다.
>>> db=dbm.open('mydbm.db','r')
>>> for k,v in db.items():
print (k,v)
b'name' : b'Raj Deshmane'
b'address' : b'Kirtinagar Pune'
b'PIN' : b'431101'