Path: csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail From: "Diez B. Roggisch" Newsgroups: de.comp.lang.python Subject: Re: [Python-de] =?utf-8?q?Schleifen_die_ohne_Durchlaufen_des_Schleif?= =?utf-8?q?enk=C3=B6rpers_beendet_wurden?= Date: Wed, 30 Mar 2016 10:27:48 +0200 Lines: 75 Message-ID: References: <56F445C9.3000200@mail.de> <56F939CE.8050601@admin-box.com> <56F99A06.4060002@sschwarzer.net> <56FB8367.8050406@admin-box.com> Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2104\)) Content-Type: multipart/signed; boundary="Apple-Mail=_6C5E15EB-6AC2-469B-8998-68156AFB9239"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Trace: news.uni-berlin.de qUUoN4wzaxsRiz3wS+fDYQ7P2YlDvd2HBi4VIhmK0e2Q== Return-Path: X-Original-To: python-de@python.org Delivered-To: python-de@mail.python.org X-Pgp-Agent: GPGMail 2.5.2 In-Reply-To: <56FB8367.8050406@admin-box.com> X-Mailer: Apple Mail (2.2104) X-Provags-ID: V03:K0:vkNQtgmgHt6Dm+3AHWnarBaOygeU73+F4GYvx4pkv5fhKBh6mJp KLVO7zkDq+ThjUBa7WUDQFj05i/G5dE5A3wTG33I7fN8O4xuVs6NsZ0OZ09PYYwykwtphrh IYXIIQr3tO86Kf7spCnNY0ulwkP3jmfYtLwlRNODzCgq7Q08+trl3ba7rSl2XVoqV4xGM2a 5gHGt990vAFN1SikhjVfA== X-UI-Out-Filterresults: notjunk:1;V01:K0:KHrJHAw2R9s=:yJPeT2kPvZlPS7WidAqcRk mltg1I5dK++6dFwUuii1E0Y5H7CY2rEbfyBJl+c3I1HyZdW0NdWtEiAryPZG2oHnlwIhXufww iG/dBxDUcYl5Rhmi9o0O3RmUVTtsGkXNlyCcYM4kFkrT6kWDWxYTekp7Ujqw7x6GDET2T354m idSz5PXe1kEJzSZ6qt0hiRWaTbkgBRD3Slx2zzbRiJo2VpwUoWDNCprKTcKfOIFiDhcjCEhfH uyPvqBl/s3fGeuFftfcFTLk/5smaGqUtPKuCLMQ8CJZT1v0rXulhK6rWqRDO2ckJQvcfMbL4J uEjdvShLp3dlXwn6QZ5gor+NxrMqWNNSUat5Cq9ED2TKemky3lzCZ4U/Shw1XavkEFy/PQuf8 Bkwyw8tOn834Ka5iO9CxckzoEYRSNReeIEPqsTwcgnznxFCbyGJ71gV86u7b1Aj0o0s9JluQt epi+2clbyjYnBJ1frn+YW8TwO0hTmpQnzNjfY7xPhM/TLR9tjb49C7Zti0XIlvCMnWw0k/obr 5o3fCZwdrcWIXhzRWWSZpkEZ0SevdcifEQGhBsZwzFBwnwQtMYJU4Ba+9vQkMrmXx96yJWDfw OSKVWRrJm9TRqG2xpipj6Evr9TiupC4KoHweQ9xJrDmmvPK4K9OF6xEmAxV8E01FwhSwaZVyN 1U1N0E+VYrtGpuQotHS4+aTPG21dhFaEFiPupCQHxufXT+Cl+6YQdz7PmAsnDBg303PktMn2x eTB6uu38IUQEIYT3Gmyc2q8smWYUnO4NW5UILomTKtB3mIUN2kI18ts8RhE= X-BeenThere: python-de@python.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Die Deutsche Python Mailingliste List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com de.comp.lang.python:4344 --Apple-Mail=_6C5E15EB-6AC2-469B-8998-68156AFB9239 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 > On 30 Mar 2016, at 09:42, Daniel Troeder wrote: >=20 > On 03/28/2016 10:54 PM, Stefan Schwarzer wrote: >> On 2016-03-28 16:03, Daniel Troeder wrote: >>> for item in list(): >>> print item >>> if "item" not in locals(): >>> print "empty" >>>=20 >>> Voraussetzung ist, dass der Variablenname ("item") nicht schon = vorher im >>> gleichen oder =FCbergeordneten scope verwendet wird. >>=20 >> technisch mag das gehen, aber f=FCr mich sieht das >> ziemlich "hackish" aus. Ich w=FCrde eine direktere >> L=F6sung (wie einige der vorgestellten) bevorzugen. > Hehe - ja das ist etwas "hackish" :) >=20 > In der Realit=E4t halte ich mich an "so gut lesbar/explizit wie = m=F6glich", > vor allem wenn es nichts idiomatisches gibt wie hier. >=20 > Ich w=FCrde 1. immer =FCberlegen ob am Konstrukt nicht prinzipiell = etwas > falsch ist, wenn eine leere Liste speziell behandelt werden muss. Das ist es oft nicht im Kontext zB von HTML-Generierung (der OP hat ja = auch Templating angesprochen) wo zwischen =93Ihre Suche nach = Weihnachtseiern hat 10 Ergebnisse=94 und =93Leider nichts gefunden=94 = unterschrieden wird. > Und 2. wenn es so ist, dann immer entweder vor der Schleife mit "if = not > liste: return foo()" aus der Funktion springen oder wenn es danach > weiter gehen soll die Schleife in if-else einpacken. > Ist nicht elegant aber unmissverst=E4ndlich und sicher(TM). Das geht eben nicht immer, wie schon vorher ausgefuehrt: =93if not = liste=94 nimmt an, das liste einen Wahrheitswert hat, der sich = entsprechend verhaelt. Das geht aber nicht zB bei einem geoeffneten = File, das leer ist. Da werden keine Zeilen herauskommen, aber =93if = mein_file=94 ist trotzdem wahr. Diez --Apple-Mail=_6C5E15EB-6AC2-469B-8998-68156AFB9239 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJW+44FAAoJEMgWrvcLlYXnJYIH/31N90BVKwIJCj1aGzwyOO4h 6jdzaiZ5A7tAu8OKExX/czbu3wDrSNrJOhfIYTHvicNRaZOR79CG08/9DrMyL0lU V842TjM3hgM8MxVmV5AIL6vqBnRwae+HS8/RNihg5PzbJEpDaQdx7IvymoCO4LXr BAMIgvLqu+tzbsEwUmgc9U0Bc85AMiptPA32Ues3vDfRMMxemrrGwrx95C6NZvg6 SNBEuXUQ7I20f5XoZqJMy1/tAhYw1DQcTW30OS1VsGv/T9eHQ0Qx2Jtip0eMhdDe UgmYq/A+2TNQC5HxDmyoucdIAM5vG20s/4dzb2wxud86Qp+nayidV0sfgV2idEQ= =g2q6 -----END PGP SIGNATURE----- --Apple-Mail=_6C5E15EB-6AC2-469B-8998-68156AFB9239--