Dateienhändel unlösbar ?

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
Bluekobalt
User
Beiträge: 26
Registriert: Montag 20. Juli 2009, 11:08

Hallo im Kompetenzzentrum,

ich möchte gerne für den Aufruf einer exe eine Argumentenliste in Form einer Template Datei mitgeben.

Das Problem ist, das diese Datei trotz des close Befehls, erst nachdem ich Python schließe, da ist.
Vorher ist Sie leer.

Code: Alles auswählen

def write(self):
        self.fobj=open(self.PFAD_TEMPLATE,"w")
        for paar in self.tmpl_dict:
            inputtype = type (self.tmpl_dict[paar])
            if inputtype == str:
                self.fobj.write  ("%-50.50s%s\n"   % (paar, self.tmpl_dict[paar]))
            elif inputtype == int:
                 self.fobj.write  ("%-50.50s%i\n"  % (paar,self.tmpl_dict[paar]))

        self.fobj.close 
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

fobj.close ist eine Funktion. Du musst sie schon aufrufen ;)
Bottle: Micro Web Framework + Development Blog
Bluekobalt
User
Beiträge: 26
Registriert: Montag 20. Juli 2009, 11:08

Defnull hat geschrieben:fobj.close ist eine Funktion. Du musst sie schon aufrufen ;)
*mitderflachenhandgegendiestirnklatsch*

Danke, ich wusste ja es ist unlösbar :wink:
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Im Uebrigen ist deine Typpruefung unnoetig und fehlerhaft.

Code: Alles auswählen

self.fobj.write  ("%-50.50s%s\n"   % (paar, self.tmpl_dict[paar]))
reicht. Ein ``%s`` nimmt alles.

Typpruefungen sollten aber mit ``isinstance`` oder ``issubclass`` gemacht werden, um auch abgeleitete Typen zu erfassen.
Antworten