Dirketer vergleich in der For Schleife

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.
smoovn
User
Beiträge: 8
Registriert: Mittwoch 21. November 2007, 09:05

Dirketer vergleich in der For Schleife

Beitragvon smoovn » Dienstag 11. März 2008, 17:47

Hallo,

ich denke mein Problem ist recht Simpel ich würde nur gerne Wissen ob ähnliches wie dieses hier möglich ist in Python möglich ist.

for (i=1;i<=b;i+=1)[...]

(es geht mir hier nur um den Vergleich)

patrick
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Dienstag 11. März 2008, 17:56

Also sowas:

Code: Alles auswählen

b = 10
for i in xrange(1, b):
    print i

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Pumeluk2
User
Beiträge: 26
Registriert: Samstag 24. März 2007, 11:24

Beitragvon Pumeluk2 » Dienstag 11. März 2008, 19:34

jens hat geschrieben:Also sowas:

Code: Alles auswählen

b = 10
for i in xrange(1, b):
    print i


[Korinthenkacker Modus]
Ist ja nicht ganz richtig, müsste ja eigentlich

Code: Alles auswählen

for i in xrange(1, b + 1)

heissen
[/Korinthenkacker Modus]

;)
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Mittwoch 12. März 2008, 08:32

Ja, stimmt. Dir frage ist, ob es nicht auch eine Liste von 0 bis 9 sein kann, also xrange(b)...

Man braucht in Python eh seltener Listen mit Zahlen, da man meist über die Elemente direkt internieren kann.

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
BlackJack

Beitragvon BlackJack » Mittwoch 12. März 2008, 09:13

Vielleicht möchte der OP ja auch C-Schleifen simulieren, dann ist die allgemeine Antwort:

Code: Alles auswählen

i = 1
while i <= b:
    # [...]
    i += 1


Es kann ja durchaus sein, dass in […] `i` und/oder `b` neue Werte zugewiesen werden.
smoovn
User
Beiträge: 8
Registriert: Mittwoch 21. November 2007, 09:05

Beitragvon smoovn » Mittwoch 12. März 2008, 14:22

Ich denke die while schleife kommt da meinen vorstellungen am nähsten - Danke.
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

Beitragvon keppla » Mittwoch 12. März 2008, 14:41

smoovn hat geschrieben:Ich denke die while schleife kommt da meinen vorstellungen am nähsten - Danke.

Darf man fragen, wozu du das brauchst? Wie schon bemerkt, ist es in python meist anders hübscher möglich (enumerate, iter, yield, list-comprehensions ermöglichen viele Dinge, die man, von C oder Java kommend, nicht vermutet)
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Mittwoch 12. März 2008, 14:43

Wie BlackJack schon andeutete: Es macht nur wenn, wenn man innerhalb der Schleife i oder b ändert. Ansonsten gibt es sicherlich einfachere Wege...

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

Beitragvon keppla » Mittwoch 12. März 2008, 15:58

jens hat geschrieben:Wie BlackJack schon andeutete: Es macht nur wenn, wenn man innerhalb der Schleife i oder b ändert. Ansonsten gibt es sicherlich einfachere Wege...

Klar, aber ich behaupte: dass man i oder b ändern will, hat häufig mehr mit der Gewohnheit aus C und Co zu tun als mit dem eigentlichen zu implementierenden Algorithmus.

Wer ist online?

Mitglieder in diesem Forum: atraxoo