Config in einer python datei

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Clif
User
Beiträge: 53
Registriert: Freitag 10. Dezember 2004, 12:21

hi leute ;) ich bin gerade am überlegen meine datenbank daten usw in eine pythonfile zu schreiben die ich dann importiere.

da die config im normal fall ja eh nur ein mal geschrieben wird sollte es ja nicht schwer sein die über ein kleines template zu erstellen.
Nun meine Frage.

Lohnt sich das eigentlich?
Mad-Marty
User
Beiträge: 317
Registriert: Mittwoch 18. Januar 2006, 19:46

Das kommt darauf an was "deine config" ist.

Reden wir hier über 1 Attribut ? 10 ? 100 ?

Sollte es für eine Config reichen : schau dir ConfigParser an.

Ansonsten kannst du natürlich einfach eine config als python-modul anlegen und die importieren.
Clif
User
Beiträge: 53
Registriert: Freitag 10. Dezember 2004, 12:21

atm gehts nur um ne kleine config (geht um die DB daten) :roll:
Mad-Marty
User
Beiträge: 317
Registriert: Mittwoch 18. Januar 2006, 19:46

DB Daten ... wieviele ?

sind es nur wenige Datensätze bieten sich mehrere wege an, von RawFile (csv) über Python Files (sehr bequem), oder aber xml (imo zuviel aufwand, igitt xml :D)


Mit jedem der ansätze wirst du unterschiedliche schwachstellen haben.

Evtl. bietet sich ja auch ein cPickle an von deinem Datenobjekt ?
Ist dann aber nichtmehr ausserhalb editierbar.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Clif hat geschrieben:atm gehts nur um ne kleine config (geht um die DB daten) :roll:
Vielleicht suchst du so etwas:

settings.txt:

Code: Alles auswählen

# Einstellungen
vorname = Gerold
nachname = Penz

Code: Alles auswählen

def get_settings_from_file(filename):
    """
    Einstellungen aus Textdatei auslesen.
    Kommentar:    #
    Einstellung:  key = value
    
    :filename: Dateiname der Einstellungsdatei
    """
    f = file(filename, "r")
    settings = {}
    
    for line in f:
        if line.strip() and not(line.startswith("#")):
            if line.find("=") > 1:
                key, value = line.split("=")
                settings[key.strip()] = value.strip()
    f.close()

    return settings

print get_settings_from_file("settings.txt")
Oder vielleicht so etwas: http://www.python-forum.de/viewtopic.php?p=9198#9198

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten