Iteration - Sinn?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
xpilz
User
Beiträge: 76
Registriert: Sonntag 11. April 2010, 12:46
Wohnort: Deutschland
Kontaktdaten:

Auch wenn der Titel von meinem Thema ein wenig dreist ist, weil ich oft gelesen habe das iterationen sehr beliebt sind, aber trotzdem habe ich eine Frage bezüglich des Sinnes.
Ich habe mir einen Text darüber mehrmals durchgelesen (dieser findet sich hier ) und was ich daraus erschließen konnte, war eigentlich nur das diese arrays und dictionaries ohne eine Referenz und einer for Schleife durchlaufen werden können. Im Tausch dagegen, ist es aber nötig eine Klasse mit verschiedenen Methoden zu schreiben oder eine Funktion. Wäre da eine for Schleife nicht simpler?
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

Wozu For-Schleifen? Sind bedingte Sprünge nicht besser? Wie im guten alten Assembler?
Bottle: Micro Web Framework + Development Blog
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

Du schreibst doch die __iter__ um mit `for` darauf zugreifen zu koennen.
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
BlackJack

@xpilz: Also ich habe Deinen Beitrag so *gar nicht* verstanden!? Kann es sein das Du zwar immer "iteration(en)" schreibst, aber eigentlich "Iterator(en)" meinst!? Iterationen sind nicht "sehr beliebt" sondern zumindest in prozeduralen Programmiersprachen essentiell. Iterationen sind Schleifendurchläufe.

In Python kannst Du keine ``for``-Schleife ohne ein iterierbares Objekt schreiben, also stellst Du den Sinn von ``for``-Schleifen selbst in Frage. Dazu passt aber die Frage ob eine ``for``-Schleife nicht simpler wäre überhaupt nicht! Simpler als *was*!?

Was Du mit "arrays und dictionaries ohne eine Referenz und einer for Schleife durchlaufen werden können" meinst, erschliesst sich mir auch nicht!? Wenn man mit einem Objekt etwas machen will, dann braucht man eine Referenz darauf. Ohne geht's nicht.
Benutzeravatar
mkesper
User
Beiträge: 919
Registriert: Montag 20. November 2006, 15:48
Wohnort: formerly known as mkallas
Kontaktdaten:

Vermutlich eine Folge davon, dass der OP versucht, das Openbook zu verstehen.
--> Setz dich lieber ans Python Tutorial. :)
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

BlackJack hat geschrieben:Also ich habe Deinen Beitrag so *gar nicht* verstanden!?
Also ich glaube wir sind genausodoof, denn ich verstehe auch beim besten Willen nicht was der OP sagen will. Könnte von einem Monte Carlo Chain-Generator generiert worden sein.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Panke
User
Beiträge: 185
Registriert: Sonntag 18. März 2007, 19:26

Er will wissen, warum man in Python innere Iteratoren verwendet anstatt den Bruder der While-Schleife aus z.B. C++.
BlackJack

@Panke: Ist das geraten, oder könntest Du mir und Leonidas eventuell die Schritte zu dieser Schlussfolgerung erklären? Für mich bitte extralangsam. :-)

In Python verwendet man bei ``for``-Schleifen doch externe Iteratoren!? Bei Io, Ruby, SmallTalk werden interne Iteratoren verwendet.

Und die ``for``-Schleife in C++ wird dank Operatorüberladung auch oft mit Iteratoren verwendet.

@xpilz: Falls das tatsächlich die Frage war: Weil man in den meisten fällen tatsächlich über Objekte iterieren möchte und nicht primitiv Zahlen hochzählen, die man dann doch wieder nur benutzt um an die Objekte zu kommen, mit denen man *eigentlich* arbeiten möchte.
Benutzeravatar
xpilz
User
Beiträge: 76
Registriert: Sonntag 11. April 2010, 12:46
Wohnort: Deutschland
Kontaktdaten:

Ja BlackJack das war die Frage dankeschön..
Und warum das zu manchen Personen verwirrend war, ist für mich jetzt auch geklärt. Danke :P.
Antworten