Ich entwickle ein Programm mit einem Einstellungsfenster, in dem ich verschiedene Parameter für mein Programm ändern kann. Was ist der beste Weg, sie in irgendeiner Art von Konfigurationsdatei zu lesen/zu speichern? Ich weiß, dass einige Software und Spiele .ini
Dateien oder ähnliches System verwenden. Wie kann ich dies in Python erreichen?Wie speichere ich Anwendungseinstellungen in einer Konfigurationsdatei?
Antwort
Die Python-Standardbibliothek enthält die ConfigParser
module, die Ini-Style-Konfigurationsdateien für Sie verarbeitet. Es ist mehr als ausreichend für die meisten Anwendungen.
Beachten Sie, dass es in 3.x umbenannt wurde ['configparser'] (http://docs.python.org/3.3/library/configparser.html). –
ConfigParser arbeitete für mich wie ein Charme. Danke! – Domagoj
Eine weitere beliebte Option für Konfigurationsdateien ist JSON - es ist eine einfache Notation, die von einer Vielzahl von Sprachen unterstützt wird.
Python hat the json
module in der Standardbibliothek, die es sehr einfach macht.
Da Sie in Ihrer Frage den Begriff Konfigurationsdatei eingeführt haben, konzentrierten sich die vorherigen Antworten auf Mittel zum Erstellen von einfachen Textdateien, die auch mit einem Standard-Texteditor bearbeitet werden können. Abhängig von der Art der zu speichernden Einstellungen ist dies möglicherweise nicht erwünscht, da nach dem Zurücklesen der Konfigurationsdatei zumindest Plausibilitätsprüfungen erforderlich sind. Also füge ich den Vorschlag des shelves Moduls hinzu, das eine direkte Möglichkeit ist, Informationen in Dateien persistent zu machen.
Es ist erwähnenswert, dass in der überwiegenden Mehrheit der Fälle, binäre Konfigurationsdateien als eine schlechte Idee betrachtet werden - Sie machen es viel schwieriger für den Endbenutzer, mit ihnen zu arbeiten. –
- 1. Wie speichere ich eine ArrayList zu den Anwendungseinstellungen
- 2. Wie speichere ich Eingaben in einer Datenbank?
- 3. Wie speichere ich Bestellungen?
- 4. Wie speichere ich Informationen in meiner ausführbaren Datei in. NET
- 5. Wie speichere ich Optionen?
- 6. Wie speichere ich Java-Methoden in einer Liste in Clojure
- 7. Wie speichere ich ein Wörterbuchobjekt in meiner Datei web.config?
- 8. Wie speichere ich Daten in einer Klasse aus der Konfigurationsdatei und lese sie zur Laufzeit insgesamt das Projekt?
- 9. Wie speichere ich Daten in C/C++?
- 10. Wie speichere ich ein ausgewähltes Abfrageergebnis in einer Variablen?
- 11. Wie speichere ich ein UIImage in einer Datei?
- 12. Wie speichere ich zusätzliche Daten in einer Authlogic-Sitzung?
- 13. Wie speichere ich Einstellungen als Hash in einer externen Datei?
- 14. Wie speichere ich chinesische Schriftzeichen in einer Datei mit Java?
- 15. Wie speichere ich ein Handle von ActiveDocument in einer Variablen?
- 16. Wie speichere ich eine Bilddatei in einer Postgres-Datenbank?
- 17. Wie speichere ich eine Binärdatei in einer SQL-Datenbank?
- 18. Wie speichere ich eine benutzerdefinierte NSObject-Klasse in einer Datei?
- 19. Wie speichere ich die Seitenquelle in einer PHP-Variablen?
- 20. Wie speichere ich ein Wörterbuch in einer Datei?
- 21. Wie speichere ich eine Instanz einer benutzerdefinierten Klasse in onSaveInstanceState?
- 22. Wie speichere ich wechselnde Daten in einer Datenbank?
- 23. Wie speichere ich Daten mit gson in einer JSON-Datei?
- 24. Wie lese ich aus einer Konfigurationsdatei in Flex?
- 25. Wie speichere ich angleJS in HTML5 localStorage
- 26. Wie speichere ich Schlüssel für APIs in Rails?
- 27. Wie speichere ich diese Tabelle in C#?
- 28. Rails-Anwendungseinstellungen?
- 29. Wie speichere ich mit ASIHTTPDownloadCache?
- 30. Wie speichere ich OFN.lpstrFile richtig?
Der beste Weg ist wahrscheinlich Xml. – enginefree
@enginefree, das ist buchstäblich nie wahr. – Cairnarvon
[configparser] (http://docs.python.org/3.3/library/configparser.html) ist einfach und direkt in der Standardbibliothek implementiert. –