[Python-de] Frage zum configparser

Manfred Gil manfred-gil at t-online.de
Do Jan 19 12:53:29 EST 2017


Am Wed, 18 Jan 2017 22:45:26 +0100 schrieb Arnold Krille:

> On Wed, 18 Jan 2017 17:21:53 +0000 (UTC) Manfred Gil
> <manfred-gil at t-online.de> wrote:
>> kleine Frage zum configparser,
>> 
>> <code>
>> conpar = configparser.ConfigParser()
>> 
>> conpar.read('config.ini')
>> 
>> # Einlesen der Daten
>> 
>> </code>
>> 
>> muß ich die Datei "config.ini" nicht irgendwie wieder schließen?
>> in der Doku habe ich nix dazu gefunden.
>> Oder geschieht diese nach dem Einlesen automatisch durch den
>> configparser?
> 
> Die anderen haben schon die vernünftige Antwort gegeben. Ich möchte
> gerne noch sagen, warum mich dir Frage überrascht hat ;-)
> 
> Der code oben zeigt für mich recht eindeutig, das lediglich der Name der
> Datei übergeben wird. Du musst Dich selber nicht kümmern:
>  * ob die Datei existiert und was passiert wenn nicht,
>  * ob die Datei lesbar ist,
>  * ob die Datei richtig formatiert ist,
>  * ob die Datei zum lesen, schreiben, anfügen, im Textmodus oder im
>    Binärmodus, mit CR+LF oder mit LF geöffnet und gelesen werden muss.
> 
> Warum (zum Geier ;-) ) kommst du da noch auf die Idee, das Du Dich um
> das Schließen selber kümmern müsstest? Wäre das dann nicht eine _sehr_
> schlecht designte API? Und müsste dann nicht "conpar.read(…)" das
> file-objekt oder den file-handle zurück geben? Erwartest Du dann nicht,
> das dann in der Dokumentation steht "Achja, kümmer Dich bitte selber
> darum das ding zu schließen"?
> 
> Vielleicht gibt es APIs, die sowas tatsächlich mit Dir als ihrem Nutzer
> machen. Aber wenn es sich um die Standardbibliotheke handelt dürfen wir
> schon besseres erwarten ;-)


Hallo Arnold,

kann es sein, das Du gestern einen schlechten Tag hattest ;-)

Wieso sollte ich mir _nicht_ Gedanken darum machen, ob ich das File wieder schließen 
sollte.
<code>
daten = open('READNE.txt','r')
text = daten.read()
daten.close()
print(text)

</code>

ist für mich im ersten Augenblick nichts anderes.
Sicher, jetzt kommen alle Python Nerds an und erklären mir den
Unterschied, zwischen den beiden code stücken von mir.

Ich bin und nicht anderes behaupte ich von mir, ein Hobby Python(man).
in meiner "kleinen" Freizeit ... nach dem Job ... und Familie, "Bastle" ich mir Programme
die mir genügen sollten.
Sicher sind meine Ansprüche an mir selber, meist zu hoch angesetzt, doch ich beiss mich
durch. Manche Probleme lösen sich durchs lesen von Dokus oder durch das Mitlesen in Forum.
Andere Sachen sind dann irgendwie nicht ganz geheuer für mich, wie mit dem Configpraser.

Aber na ja, lassen wir das. Hier hatte ich schnelle und unkomplizierte Hilfe
bekommen, wie meistens... ne immer :-)


> Happy Coding,
> 
> Arnold

Wünsche ich Dir auch.

Gruß
Manfred




-- 


Mehr Informationen über die Mailingliste python-de