Path: csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail From: Peter Otten <__peter__@web.de> Newsgroups: de.comp.lang.python Subject: Re: [Python-de] =?utf-8?q?einheitliches_Vorgehen_beim_=C3=96ffnen_vo?= =?utf-8?q?n_Dateien=2E?= Date: Thu, 18 Oct 2018 11:18:02 +0200 Organization: None Lines: 69 Message-ID: References: <90674f1b-f3c2-04c2-f50c-f306c5ea1a88@thomas-guettler.de> <5196404.QTvlg3oVk3@palindrom> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Trace: news.uni-berlin.de 5y0iYPZeJ7XGlHX54ZkP2w21jKVePojyJjLXsAsMXjdw== Return-Path: <__peter__@web.de> X-Original-To: python-de@python.org Delivered-To: python-de@mail.python.org User-Agent: KMail/4.13.3 (Linux/3.13.0-147-generic; KDE/4.13.3; x86_64; ; ) In-Reply-To: <90674f1b-f3c2-04c2-f50c-f306c5ea1a88@thomas-guettler.de> X-Provags-ID: V03:K1:gJ62yjqrlOSlVhmXdZaQZN086rXLmXDBr+mX80cCkp2eqTSNNpY TrcLbmDDy75JfqsGHfT2orjluTqYH2ttWx50QiYbsa7RW7qLVKlAiklpcaCZ84Y62VJhtS1 ebOqMrub8eM4H4sYy5J3I33bpY756AK1j+D/xWKVPp2awFFzompf/GmlziKTNFqRC+i1ZFQ KIbcEuYFyHBrMrQ6YhA4A== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V01:K0:++5Txs3dwUo=:p7Mr1cXsaGwBi+yylEp+B9 G9JRJ/M8q8Ef6hen4jOnorWlpN9WlvzqiXqmfMkiP+dG9wgXywXRff/5gVeZLsT8yJZVurCop g4F/9bcQqRoGvfmfPxDftvMHSlOT8RtOjeRX9DlD4oJyBEXpoFirvPJRTrmxxBhwJ3YIp1IPa GKmmqrWhmhno0zxVqinNQHQaY13Vtyidfb0nAd53pupPGYI4Ntmf3u/SnM/0pP0nrCJ7p7QLN utIu6+WX/jWx0QVO1KAX+3syeF/j/AL4Re9Dy6X/ZU7evgS29ORBZD/x7JirTh3pYp07jcf3L UzQDTW8Lfg8B8OD6E2QxMgUkZGBMgnmGSdEpSph+w3URrasAcHnlhYhLFy50XrsMNME0BU/IZ G1K8d8vfT8IO2ngzE+lK4mYhqH36+MGGbRKkE1v56zE9/EovN2G6F/+FFZqzY6y0LIu2Z5eCs IB8Q5KDXC8+d1P555zPm8M4Y29fPlUjZqwQ23cb8ubAqU0rmL6AjTyy0Y9k+aJCYw41xiOnFn syukqF4nTV+I9KSPAzLIyn9rHoKvfMvBwR4wZHqHAbbrbiW9nzhviJSzGYV+Yo7Md8Uw2+XDb 18JO+NaG0UboXM0Y/qo1RDBISHOmLVQgqWJ8TfBl+UvTHo0aKaP3o9NBm/Wnygzw6CfiCPj4L WEups4k4nqYcghtYVd+5NMmD7r+52TEQIh/SAthTZ0DeeTGvlVfaMf5f5qxkND3l1iPplXw/7 XKU6Akj4cMytssTK5tQAGyOAqXZlgFoRVflXXiVx1COh9n8m2o6aZMAoBZYElm/f/Ue8e1wb2 u1EGsWQgc9c6BFxEmNKMvfk3O442aezRGU56o0OZS0iD6MaVi8= X-BeenThere: python-de@python.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Die Deutsche Python Mailingliste List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Mailman-Original-Message-ID: <5196404.QTvlg3oVk3@palindrom> X-Mailman-Original-References: <90674f1b-f3c2-04c2-f50c-f306c5ea1a88@thomas-guettler.de> Xref: csiph.com de.comp.lang.python:5286 Am Do Oktober 18 2018, 09:59:08 schrieb Thomas G=C3=BCttler: > Wenn man gemeinsam Quelltext schreibt, ist es sinnvoll sich Guideline= s zu > erstellen. >=20 > Was haltet ihr von diesen Guidelines? >=20 >=20 > Ziel: einheitliches Vorgehen beim =C3=96ffnen von Dateien. >=20 >=20 > So lange wir Python2 unterst=C3=BCtzen soll io.open() verwendet werde= n. Vielleicht mit from io import open das Built-in =C3=BCberschreiben? Ich bin allerdings auf Python 3 fixier= t... > Es sollte immer der Mode angegeben werden: also meist eines aus diese= r > Liste: 'rt', 'rb', 'wt', 'wb' Ich verwende immer nix, "w", "rb" oder "wb"; mit diesen Richtlinien k=C3= =B6nntest=20 du mich qu=C3=A4len ;) > Wenn im Textmode ge=C3=B6ffnet wird, braucht nicht 'utf8' angegeben w= erden, denn > das ist der Default (locale.getpreferredencoding(False) ist bei uns i= mmer > 'utf8') > Wenn man nur den Inhalt braucht, dann ist diese einfache Variante zul= =C3=A4ssig > (ohne with-Statement) >=20 > content =3D io.open(my_file, 'rt').read() >=20 > Auch beim Schreiben? Niemals ohne with. Wenn du h=C3=A4ufig eine komplette Datei einliest: def read_text(filename): with open(filename) as f: return f.read() > Die Variable wird =E2=80=9Ef=E2=80=9C genannt: >=20 > with io.open(my_file, 'wt') as f: > f.write(...) >=20 > So wird das meist in der Python-Doku gemacht: Bsp: Methods of File Ob= jects Mache ich auch oft, damit wird pylint aber nicht gl=C3=BCcklich. Bei zw= ei Dateien=20 nutze ich meist instream und outstream. > Der with-Block nach dem Open sollte kurz sein. Also nicht l=C3=A4nger= etwa 6 > Zeilen. *Jeder* Block sollte kurz sein. Ist aber nicht immer durchzuhalten.