Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5287

Re: [Python-de] einheitliches Vorgehen beim Öffnen von Dateien.

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Kaeptm Blaubaer <kaeptmblaubaer1000@gmail.com>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] einheitliches Vorgehen beim Öffnen von Dateien.
Date Thu, 18 Oct 2018 11:29:15 +0200
Lines 76
Message-ID <mailman.231.1539854969.2799.python-de@python.org> (permalink)
References <90674f1b-f3c2-04c2-f50c-f306c5ea1a88@thomas-guettler.de> <CAPPXo7DY3sHRDaBBMqDGTiky+Akvyhu5ULjtmDscjPtdmYeuyg@mail.gmail.com>
Mime-Version 1.0
Content-Type text/plain; charset="UTF-8"
Content-Transfer-Encoding quoted-printable
X-Trace news.uni-berlin.de uPhSBW7Xw/gUHauSNp3hfQ6UuhNNpHCfxcQQZRoIMtXg==
Return-Path <kaeptmblaubaer1000@gmail.com>
X-Original-To python-de@python.org
Delivered-To python-de@mail.python.org
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=ySmB+nIfCBIqgSJ6KKMGinuYMtZr37FFbASiZM6o0bQ=; b=E6DMviWXq5QYK60HNAxopjEpKqMjUQdkiIZaupoco1SENhjK7phAYDHjI715bKrnaQ OkOuNXO3u5Hv2mMQYAlte8Gnf++Kc6R6VJxDZ/m5uIYP1W/3fN11HcAft9118c4fTQo5 bSmlZsWfXDDVMKZ8nG/6clDWoZ4CyjrVH6KfUqNKrGBnlOBYokMKjPW2In4ywDQlseFb 8D2NNZUrNf03O+y4tGjxKdlykwXyzDTH9iK8w5llz8r8YcggnmziI0SLMAeiytnulYHJ C8azSwtgYrx5MK6Uyxedeq0zt26TTLyDL06R8cfd62W1MtjCx9Joy1UP1LnGlxidFDva OHJw==
X-Google-DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ySmB+nIfCBIqgSJ6KKMGinuYMtZr37FFbASiZM6o0bQ=; b=SqSTSm+Fa3H6ZqkHpvOTv+Uny0+1P2PCrtJ5KoZ/fcSTfWyoWwGeHYIPkhu2IHk8nd S/LPuavkO/nI7hmhV5DkffuiFUNTZefMSLBwRxuemOzoAODkv+4rcFciFCkOwa8m+lpn CtPMv1aBEUSDq2v+jDrS+nAeQvQiO+HuM6eguKkvfdxjbZyeh/kGOB0VrrZE/TjFmgjO 0KNlzqcg80o3XIjL10zJhSEa495Z9BFnq4CzvvBLLAqVDGU1raQvn9v46WBwczbZ6q56 Hd4MlXBR8FmoIKpS0jEC5hPoLdC1yMqVZ81CjC3JeoQjXPW36+efy8lLLKiBHRrGwnHC kE0g==
X-Gm-Message-State ABuFfogkXq9qErzZySDXIOTPm/TdVZ6oDxtxwLp8/mRhS2m15iVp8c/N Kc2+x1kwFkXW1hFz4ig8VrT2Re1dBnigBU8Fym4=
X-Google-Smtp-Source ACcGV63p5Oba4wkCt9gH8dqf/6qJD0IK6TvvTYyIr/8odJLf4Sh1L9iqyXqwC5CbYq0a42qtDsge7lDZJcFc+vTYdA0=
X-Received by 2002:a19:a184:: with SMTP id k126-v6mr952497lfe.22.1539854967342; Thu, 18 Oct 2018 02:29:27 -0700 (PDT)
In-Reply-To <90674f1b-f3c2-04c2-f50c-f306c5ea1a88@thomas-guettler.de>
X-Content-Filtered-By Mailman/MimeDel 2.1.29
X-BeenThere python-de@python.org
X-Mailman-Version 2.1.29
Precedence list
List-Id Die Deutsche Python Mailingliste <python-de.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-de>, <mailto:python-de-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-de/>
List-Post <mailto:python-de@python.org>
List-Help <mailto:python-de-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-de>, <mailto:python-de-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID <CAPPXo7DY3sHRDaBBMqDGTiky+Akvyhu5ULjtmDscjPtdmYeuyg@mail.gmail.com>
X-Mailman-Original-References <90674f1b-f3c2-04c2-f50c-f306c5ea1a88@thomas-guettler.de>
Xref csiph.com de.comp.lang.python:5287

Show key headers only | View raw


io.open(...).read() oder io.open(...).write() sind nicht empfehlenswert,
denn bei PyPy oder Jython oder wenn CPython den gc ändert, werden Dateien
nicht mehr sofort geschlossen. Das kann dazu führen, dass dem Betriebsystem
die Datei-Handles ausgehen, und das Programm nicht mehr funktioniert oder
sogar abstürzt. Bei write kann es auch passieren, das dadurch die
Dateiinhalte nur im Buffer sind.

Und man kann nie wissen, wie man das System einstellt oder ersetzt, daher
würde ich auch empfehlen, das encoding immer anzugeben.

Thomas Güttler <guettliml@thomas-guettler.de> schrieb am Do., 18. Okt.
2018, 10:08:

> Wenn man gemeinsam Quelltext schreibt, ist es sinnvoll sich Guidelines zu
> erstellen.
>
> Was haltet ihr von diesen Guidelines?
>
>
> Ziel: einheitliches Vorgehen beim Öffnen von Dateien.
>
>
> So lange wir Python2 unterstützen soll io.open() verwendet werden.
>
>
>
> Es sollte immer der Mode angegeben werden: also meist eines aus dieser
> Liste: 'rt', 'rb', 'wt', 'wb'
>
>
>
> Wenn im Textmode geöffnet wird, braucht nicht 'utf8' angegeben werden,
> denn das ist der
> Default (locale.getpreferredencoding(False) ist bei uns immer 'utf8')
>
>
>
> Wenn man nur den Inhalt braucht, dann ist diese einfache Variante zulässig
> (ohne with-Statement)
>
> content = io.open(my_file, 'rt').read()
>
> Auch beim Schreiben?
>
>
>
> Die Variable wird „f“ genannt:
>
> with io.open(my_file, 'wt') as f:
>          f.write(...)
>
> So wird das meist in der Python-Doku gemacht: Bsp: Methods of File Objects
>
>
>
> Der with-Block nach dem Open sollte kurz sein. Also nicht länger etwa 6
> Zeilen.
>
> Gruß,
>    Thomas
>
>
> --
> Thomas Guettler http://www.thomas-guettler.de/
> I am looking for feedback:
> https://github.com/guettli/programming-guidelines
> _______________________________________________
> python-de maillist  -  python-de@python.org
> https://mail.python.org/mailman/listinfo/python-de
>

Back to de.comp.lang.python | Previous | Next | Find similar


Thread

Re: [Python-de]  einheitliches Vorgehen beim Öffnen von Dateien. Kaeptm Blaubaer <kaeptmblaubaer1000@gmail.com> - 2018-10-18 11:29 +0200

csiph-web