Heim >Backend-Entwicklung >Python-Tutorial >Ausführliche Erklärung von Python mithilfe des dbm persistenten Wörterbuchs (Python-Mikrodatenbank)

Ausführliche Erklärung von Python mithilfe des dbm persistenten Wörterbuchs (Python-Mikrodatenbank)

高洛峰
高洛峰Original
2016-10-18 13:51:541970Durchsuche

Wenn in einigen kleinen Python-Anwendungen keine relationale Datenbank benötigt wird, kann ein persistentes Wörterbuch bequem zum Speichern von Name/Wert-Paaren verwendet werden. Der Hauptunterschied besteht darin, dass die Daten gelesen und gespeichert werden auf die Diskette geschrieben. Ein weiterer Unterschied besteht darin, dass DBM-Schlüssel und -Werte vom Typ String sein müssen.

1. DBM-Modul auswählen

Python unterstützt viele DBM-Module, leider sind die von jedem DBM-Modul erstellten Dateien nicht kompatibel.

Die folgende Tabelle listet diese Module auf:

Modulbeschreibung

dbm Wählen Sie das beste dbm-Modul

dbm.dumb Eine einfache, aber einfache Möglichkeit, das zu verwenden dbm-Bibliothek Tragbare Implementierung

dbm.gnu verwendet die GNU-dbm-Bibliothek

Im Allgemeinen verwenden Sie das dbm-Modul, es sei denn, eine dbm-Bibliothek verfügt über spezielle erweiterte Funktionen.

2. Erstellen Sie ein persistentes Wörterbuch

import dbm
db = dbm.open('Bookmark', 'c')
#添加选项
db['MyBlog'] = 'jonathanlife.sinaapp.com'
print(db['MyBlog'])
#保存,关闭
db.close()

Die Öffnungsfunktion bietet drei Möglichkeiten, dbm zu öffnen:

Flag-Verwendung

C Öffnen Sie die Datei und lesen, schreiben, ggf. Datei erstellen

W Datei zum Lesen und Schreiben öffnen, wenn die Datei nicht existiert, wird sie nicht erstellt

N Datei zum Lesen öffnen und schreiben, aber immer eine neue erstellen Die leere Datei


kann auch einen weiteren optionalen Parameter übergeben, der den Modus darstellt, wodurch eine Reihe von UNIX-Dateiberechtigungen gespeichert werden, was nicht der Fall ist ausführlich hier.

3. Greifen Sie auf das persistente Wörterbuch zu

Das von der Öffnungsfunktion zurückgegebene Objekt wird als Wörterbuchobjekt betrachtet. Die Zugriffsmethode für Werte lautet wie folgt:

db[‘key’] = ‘value’
value = db[‘key’]
#删除值:
del db[‘key’]
#遍历所有key:
for key in db.keys():
   #your code here

Codebeispiel:

import dbm
#open existing file
db = dbm.open('websites', 'w')
#add item
db['first_data'] = 'Hello world'
    
#verify the previous item remains
if db['first_data'] != None:
    print('the data exists')
else:
    print('Missing item')
   
#iterate over the keys, may be slow
for key in db.keys():
    print("Key=",key," value=",db[key])
   
#delete item
del db['first_data']
   
#close and save to disk
db.close()

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn