IndentationError, warum?

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
gast

Donnerstag 1. Dezember 2005, 12:47

:shock:

Code: Alles auswählen

 a = range(20, 31)
           for i  in range (len (a)):
           print i
Warum krieg ich diese Fehlermeldung? :

"IdentationError: expected an idented block"

Edit (Leonidas): Code in Python-Tags gesetzt und Threadtitel aussagekräftiger gemacht.
Benutzeravatar
lutz.horn
User
Beiträge: 205
Registriert: Dienstag 8. November 2005, 12:57
Wohnort: Pforzheim

Donnerstag 1. Dezember 2005, 12:55

gast hat geschrieben:Warum krieg ich diese Fehlermeldung? :

"IdentationError: expected an idented block"
Weil Deine Einrückung nicht stimmt. Schreib:

Code: Alles auswählen

a = range(20, 31)
for i in range(len(a)):
    print i
Übrigens würde

Code: Alles auswählen

for i in range(11):
    print i
das gleiche Verhalten ergeben.

Edit (Leonidas): Code in Python-Tags gesetzt.
Benutzeravatar
jens
Moderator
Beiträge: 8461
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Donnerstag 1. Dezember 2005, 13:15

@gast: Bitte auch etwas aussage kräftigere Titel benutzten! z.B. "IdentationError, warum?"

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

Donnerstag 1. Dezember 2005, 20:38

Danke für die prompte Hilfe.

Code: Alles auswählen

#geradeZahl.py
""" gerade Zahlen zwichen 20 und 30 erkennen"""

a = range(20, 31)
 
for i in range(len (a)):
 #    print a[i]
     if a[i]%2 == 0:
	     print "Diese Zahl ist eine ganze Zahl:"
	     print a[i]
BlackJack

Donnerstag 1. Dezember 2005, 23:08

Du kannst auch direkt über die Liste mit den Zahlen iterieren, ohne noch eine zusätzliche Liste mit Indizes in `a` zu erzeugen.

Code: Alles auswählen

a = range(20, 31)
for i in a:
    if i % 2 == 0:
        print '%d ist eine gerade Zahl.' % i
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Freitag 2. Dezember 2005, 13:29

Ich hätte noch folgendes anzubieten, dass in der Liste sowieso nur gerade Zahlen sind:

Code: Alles auswählen

for i in xrange(20, 31, 2):
    print '%d ist eine gerade Zahl.' % i
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Antworten