Python3 - QSettings
-
Ich habe in meinen Projekten, verschiedene Einträge die man ständig braucht und sich merken möchte, in eine JSON-Datei gespeichert. Danach habe ich diese wieder ausgelesen, wenn ich sie benötigte.
Beim Verbessern meiner Anwendungen, bin ich dann über QSettings gestolpert.
The QSettings class provides persistent platform-independent application settings
Damit sollte klar sein, was es macht. Es speichert dauerhaft Daten in einer Datei.
Zum Benutzen der Klasse brauchen wir folgendes in unserem Projekt.
from PyQt5.QtCore import QSettings
Danach habe ich mir zwei Funktionen geschrieben um das flexibel nutzen zu können.
def get_value_settings(self, entry_name): entry_value = settings.value(entry_name, True) return entry_value def set_value_settings(self, entry_name, entry_value): settings.setValue(entry_name, entry_value)
Erste Funktion holt den Inhalt eines Eintrages, die zweite Funktion setzt einen Eintrag.
Eintrag setzen
a = 'TEST'; b = '123456'; set_value_settings(self, a, b) c = 'TEST2'; d = '456789'; set_value_settings(self, c, d)
Eintrag lesen
e = 'TEST2' result = get_value_settings(self, e) print("Result:", result)
Ausgabe
Result: 456789
Inhalt der Datei
[General] TEST=123456 TEST2=456789
Finde ich sehr praktisch und einfach zu verarbeiten. Das werde ich dann mal vollständig einbauen.