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


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

Re: [Python-de] War die Idee mit Iteratoren/Generatoren wirklich so super?

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Stefan Behnel <python-de@behnel.de>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] War die Idee mit Iteratoren/Generatoren wirklich so super?
Date Tue, 25 Jul 2017 10:41:18 +0200
Lines 34
Message-ID <mailman.16.1500972087.3037.python-de@python.org> (permalink)
References <392f5a95-defa-0f3d-0f1a-d0b554c2fa34@thomas-guettler.de> <3eb349a7-bc35-cf9e-4014-25c23551829b@behnel.de>
Mime-Version 1.0
Content-Type text/plain; charset=utf-8
Content-Transfer-Encoding 8bit
X-Trace news.uni-berlin.de aw6VVW1ac/IMDN4pBdObvQdQ+ov0/Q/KVxCj8TMsZ5CA==
Return-Path <python-de@behnel.de>
X-Original-To python-de@python.org
Delivered-To python-de@mail.python.org
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; t=1500972080; l=1544; s=domk; d=behnel.de; h=Content-Transfer-Encoding:Content-Language:Content-Type:In-Reply-To: MIME-Version:Date:From:References:To:Subject; bh=sKwCMGP1eeUNCc0ZKWm8V2+pN7N2oekh0ly1rdRPpSU=; b=TpZcCxrjwt4gdsD5Yt0dShPEk5/Wgvj74j6y6N2Sq5mA2PEkVsqYSTC7Yf/2gTsjbM z8rRK8QAL55z3dEVZ8otz5JeCF7EHSKqP9pFq4JT3imvdb1cT1sC8vpaSiTir9AQNgTu WoK+imIeTRxIALHOtGn6zYz2Ra06bAj5ofGXw=
X-RZG-AUTH :E1MMdFW4b++AXZOTwA41DOYM0Dv9LNWvavC/fJZqSuoXq8/b35jbpozFABqPas32JtEoDqV0c6foMkqRyrY+/G6bnnMKO7wYZ1El
X-RZG-CLASS-ID mo00
User-Agent Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
In-Reply-To <392f5a95-defa-0f3d-0f1a-d0b554c2fa34@thomas-guettler.de>
Content-Language de-DE
X-BeenThere python-de@python.org
X-Mailman-Version 2.1.24
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 <3eb349a7-bc35-cf9e-4014-25c23551829b@behnel.de>
X-Mailman-Original-References <392f5a95-defa-0f3d-0f1a-d0b554c2fa34@thomas-guettler.de>
Xref csiph.com de.comp.lang.python:4849

Show key headers only | View raw


Thomas Güttler schrieb am 25.07.2017 um 10:14:
> Ich frage mich: Bringt der Einsatz von Iteratoren und Generatoren wirklich
> so viel?
> 
> Sicherlich gibt es extreme Beispiele bei denen die Datenmenge nicht in den
> Hauptspeicher passen würde.
> 
> Aber solche Datenmengen habe ich im PostgreSQL, und ich mache auch
> Schleifchen über alle Daten
> in der DB :-)
> 
> Wie seht ihr das?

Hauptspeicherengpässe sind das eine, aber auch bei nichtüberfließenden
Datenmengen können Generatoren deutlich schneller sein. Ihr Vorteil liegt
vor Allem in der effizienten Nutzung von Resourcen wenn ein Datenelement
nach dem anderen komplett (oder zumindest weitreichend) verarbeitet werden
kann, anstatt erst alle Elemente einmal durch die CPU zu ziehen, und dann
nochmal und nochmal. Und vielleicht nochmal.

Je nach Komplexität der Verarbeitung und dem Verhältnis von
Einzelelementgröße zu Gesamtdatengröße kann der Unterschied durchaus
frappierend sein. Obwohl es natürlich auch Fälle gibt, in denen Generatoren
den Code langsamer machen, z.B. weil das einzelne Durchreichen der Daten ja
auch zur Laufzeit beiträgt.

Na ja, und ich finde es irgendwie auch generell schwer zu verargumentieren,
dass Daten komplett im Speicher landen müssen, wenn sie auch wesentlich
speichersparender verarbeitet werden können (zumindest bei ähnlicher
Laufzeit, also insbesondere bei Dateiverarbeitung, Datenbankabfragen, I/O
halt). Meistens ist mein Code ja zur Laufzeit nicht auf der grünen Wiese
unterwegs.

Stefan

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


Thread

Re: [Python-de] War die Idee mit Iteratoren/Generatoren wirklich so super? Stefan Behnel <python-de@behnel.de> - 2017-07-25 10:41 +0200

csiph-web