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


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

Re: [Python-de] Fwd: Re: Syntax-Erweiterung für Schleifen in Python3

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From "Sven R. Kunze" <srkunze@mail.de>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] Fwd: Re: Syntax-Erweiterung für Schleifen in Python3
Date Mon, 11 Apr 2016 22:25:47 +0200
Lines 62
Message-ID <mailman.35.1460406356.15650.python-de@python.org> (permalink)
References <570AAE64.1030109@procoders.net> <570C084B.5050301@mail.de>
Mime-Version 1.0
Content-Type text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding 8bit
X-Trace news.uni-berlin.de xoX98eR7IsMHFFBACYeB4ADYf8k7AxOWhPhzsq+AdmWg==
Return-Path <srkunze@mail.de>
X-Original-To python-de@python.org
Delivered-To python-de@mail.python.org
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/simple; d=mail.de; s=mail201212; t=1460406348; bh=2YdJX9B71KML3SCaBk8zAByOgBBCd35QPfqE+EJaPQg=; h=Subject:To:References:From:Date:In-Reply-To:From; b=AgrfDdTSsCXFDHDaduLJU6uZPtQh3D+fG9LABcdMxgj11IWkuHMMN8ULxmqCmSoMY RnpLXfnr/nr+Tf1B6x2h6NQt9OeSnjFh2kqhLKBf9JMSV6c1p/GWSGz1c+me6Ovtfc JUkToTZL/QiBR50KfLXM8FSir2fR4SG2iMCr4mAM=
In-Reply-To <570AAE64.1030109@procoders.net>
X-purgate clean
X-purgate This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate-type clean
X-purgate-Ad Categorized by eleven eXpurgate (R) http://www.eleven.de
X-purgate This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate clean
X-purgate-size 6092
X-purgate-ID 154282::1460406348-00000859-4930712E/0/0
X-Content-Filtered-By Mailman/MimeDel 2.1.21
X-BeenThere python-de@python.org
X-Mailman-Version 2.1.21
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 <570C084B.5050301@mail.de>
X-Mailman-Original-References <570AAE64.1030109@procoders.net>
Xref csiph.com de.comp.lang.python:4397

Show key headers only | View raw


On 10.04.2016 21:49, Achim Domma wrote:
> Ich würde gerne mal einen realen Anwendungsfall sehen. Zumindest ist 
> das die Frage, die ich einem Kollegen stellen würde, der mit dem 
> Problem auf mich zu kommt. Für mich "riecht" die Frage nach einem 
> verstecken Workaround für ein anderes Problem.

Ich hatte das auf der englischen Liste hatte ich das reale Problem des 
Kollegen so beschrieben:

- lasse dir von System A ein Objekt nach dem anderen geben und erzeuge 
in System B eine Bestätigung für die Bearbeitung dafür
- falls System A dir gar kein Objekt liefert, erzeuge in System B eine 
Art "gab nix"-Bestätigung


Ein reales Problem, beauftragt und bezahlt durch einen unserer Kunden 
(SAP-System, Workflowsystem, etc.).

> Meiner Ansicht nach unterwandert die Fragestellung etwas das abstrakte
> Konzept eines Iterators. Eine Iterator liefert "on demand" Werte und
> eine For-Schleife verarbeitet sie "stupide" einen nach dem anderen. Die
> "Buchhaltung" ob der Iterator je ein Ergebnis geliefert hat,
> interessiert normal nicht, wird her aber gewünscht.

Das ist die eine Interpretation. Man kann es auch als 
Kontrollflusssteuerung bezeichnen, so, wie das auch "for-else" macht.

> Meiner Ansicht nach ist die For-Schleife der falsche Platz.

Warum?

Weil man es im Iterator lösen KANN, heißt nicht, dass die Schleife der 
falsche/richtige Platz ist.

> Ich würde das im Iterator lösen und hab' mal ganz auf die Schnelle 
> folgendes zusammengehackt:
> [schnippeldischnipp]

Interessante Idee. Auf der englischen Liste hatte jemand folgendes 
(quasi eine Syntax für deinen Wrapper) vorgeschlagen:

for item in collection as iterator:
     # do
if iterator.empty:
     # make


Zugegebenermaßen würde diese Art der Lösung eine gewisse 
Flexibilisierung erlauben; bspw. das Trennen von for-Schleife und if-empty.

Allerdings kann man das auch als Schwäche der Lösung interpretieren, 
wenn die Trennung nicht wirklich sinnvoll sein kann. Dies ist der Fall, 
wenn die Prüfung, ob der Iterator leer war, erst am 
Sankt-Nimmerleins-Tag stattfindet und somit der konkrete Bezug verloren 
geht.

Für das, was ich bisher gesehen habe, wäre eine Trennung NICHT notwendig 
gewesen, aber man weiß ja nie. Von daher hätte ich auch nichts dagegen.


vG
Sven

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


Thread

Re: [Python-de]  Fwd: Re: Syntax-Erweiterung für Schleifen in Python3 "Sven R. Kunze" <srkunze@mail.de> - 2016-04-11 22:25 +0200

csiph-web