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


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

Re: [Python-de] Schleifen die ohne Durchlaufen des Schleifenkörpers beendet wurden

From Christopher Arndt <chris@chrisarndt.de>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] Schleifen die ohne Durchlaufen des Schleifenkörpers beendet wurden
Date 2016-03-29 14:48 +0200
Message-ID <mailman.148.1459255751.28225.python-de@python.org> (permalink)
References <56F445C9.3000200@mail.de> <56F939CE.8050601@admin-box.com>

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Am 28.03.2016 um 16:03 schrieb Daniel Troeder:
> for item in list():
>     print item
> if "item" not in locals():
>     print "empty"
> 
> Voraussetzung ist, dass der Variablenname ("item") nicht schon vorher im
> gleichen oder übergeordneten scope verwendet wird.

Dies ist aber in der Praxis m.E. schwer sicher zu stellen. Die sichere
Variante wäre also:

locals().pop('item', None)
for item in items:
    ...
if item in locals():
    ...

Wobei mir weiterhin dies besser gefällt, weil m.E. klarer:

item = object
for item in items:
    ...
if item is object:
    ...


Chris

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


Thread

Re: [Python-de]  Schleifen die ohne Durchlaufen des Schleifenkörpers beendet wurden Christopher Arndt <chris@chrisarndt.de> - 2016-03-29 14:48 +0200

csiph-web