Anfängerfrage

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.
Rektakel
User
Beiträge: 1
Registriert: Freitag 18. April 2008, 16:11

Anfängerfrage

Beitragvon Rektakel » Freitag 18. April 2008, 16:15

Hallo, bin Anfänger in Python habe aber schon in anderen Sprachen Erfahrung.

Jetzt hab ich ein ziemlich seltsames Phänomen:

Ich hab ne Liste

current = [1,2,3,4,5,6,7,8,9,10]

Folgendes funktioniert nicht:

for i in range (0,9):
if current[i] == 10:
okay = 1

Aber seltsamerweise funzt das:

for i in range (0,10):
if current[i] == 10:
okay = 1

wobei current[10] ja eigentlich out of range sein müsste. Woran liegt das? Danke

Grüße
Rektakel
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Freitag 18. April 2008, 16:17

Code: Alles auswählen

In [8]: range(9)
Out[8]: [0, 1, 2, 3, 4, 5, 6, 7, 8]

In [9]: range(10)
Out[9]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]


:3
Karl
User
Beiträge: 252
Registriert: Freitag 29. Juni 2007, 17:49

Beitragvon Karl » Freitag 18. April 2008, 16:18

Gib mal
print range(0, 10) ein ;)

Edit: Okay, da hat's schon jemand für dich getan :o
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Beitragvon CM » Freitag 18. April 2008, 16:18

Hallo und willkommen im Forum

das liegt daran das

Code: Alles auswählen

range(0,10) == [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

während

Code: Alles auswählen

range(0,9) == [0, 1, 2, 3, 4, 5, 6, 7, 8]


Du weißt aber auch, daß Du direkt über current iterieren kannst? Z. B.

Code: Alles auswählen

for x in current:
    something


Und wie man hier im Forum Pythoncode richtig setzt steht in den FAQ.

Gruß,
Christian

edit: PS Wohl viiiieeel zu langsam .... ;-)

Wer ist online?

Mitglieder in diesem Forum: Holger Chapman