[Python-de] close() und flush() (was: Problem mit os.spawnv)
Andreas Kaiser
listen at vocote.de
Fri Mar 28 13:58:14 EST 2003
Hallo Christian,
Am Freitag, 28. März 2003 13:28 schrieb Christian Mönch:
> Steht "f.close" und "f.flush" tatsächlich so im Code, also ohne Klammern?
> Dann wird die close-Methode von f nicht aufgerufen, sondern lediglich
> eine Referenz darauf erzeugt, die dann allerdings nicht weiter genutzt
> und sofort wieder verworfen wird.
Die beiden Anweisungen stehen ohne Klammer im Code :(
Mit Klammer dahinter funktioniert alles wie erwartet - das war der Fehler!
> > Also das geht nicht:
> > (Beipieldarstellung)
> >
> > def makeAll(self):
> > f.write(text)
> > f.close
> > f.flush
> > pid = os.spawnv(os.P_WAIT, '/usr/bin/latex', ['latex',
> > 'filename.tex']) [...]
>
> Ein flush nach close führt zu einem Fehler ...
Das habe ich bemerkt!
> und ein flush vor einem close
> ist unnötigt, da bei close alle Puffer ge-flusht (denglisch ist was
> feines ;-) werden.
Sieht jetzt so aus und funktioniert:
def makeAll(self):
f.write(text)
f.close()
pid = os.spawnv(os.P_WAIT, '/usr/bin/latex', ['latex','filename.tex'])
Danke!
Grüße
Andreas
More information about the Python-de
mailing list