IndentationError erwartet einen eingerückten block
Hier ist der code.:
def myfirst_yoursecond(p,q):
a = p.find(" ")
b = q.find(" ")
str_p = p[0:a]
str_q = p[b+1:]
if str_p == str_q:
result = True
else:
result = False
return result
Hier ist der Fehler:
Traceback (most recent call last):
File "vm_main.py", line 26, in <module>
import main
File "/tmp/vmuser_ssgopfskde/main.py", line 22
result = False
^
IndentationError: expected an indented block
Was ist falsch an meinem code?
InformationsquelleAutor Sam | 2012-04-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie gemischte tabs und Leerzeichen. Dies kann dazu führen, dass einige verwirrende Fehler.
Ich würde vorschlagen, mit nur tabs oder nur Leerzeichen für die Einrückung.
Nur mithilfe von Leerzeichen ist in der Regel die einfachere Wahl. Die meisten Redakteure haben eine option zur automatischen Konvertierung von tabs zu Leerzeichen. Wenn Ihr editor über diese option verfügt, schalten Sie es ein.
Nebenbei, dein code ist Ausführlicher, als es sein muss. Stattdessen:
Nur dazu:
Sie scheinen auch einen Fehler in dieser Zeile:
Überlasse ich Ihnen, herauszufinden, was der Fehler ist.
Es hat tatsächlich unterstützt 8-Raum-Registerkarten, aber es ist viel besser zu halten, nur Räume, besonders wenn Sie Ihren code bewegt sich zwischen Editoren und Systeme (die Sie sollten erwarten, dass es.)
Tut mir Leid. Ich habe es geändert q[b+1:]. Es ist wirklich nett von Ihnen, mir zu helfen, eine Menge.
Ich bekomme das gleiche problem, um nicht einzurücken, bevor eine def bla(x,y) Funktion der Linie unten. Nur das hinzufügen Einrückung funktioniert. Danke.
InformationsquelleAutor Mark Byers
Dieser Fehler tritt auch auf, wenn Sie einen block ohne Anweisungen in es
Beispiel:
Beachten Sie, dass die
for
block ist leer. Sie können die übergeben - Anweisung, wenn Sie möchten, testen Sie den verbleibenden code in das Modul.InformationsquelleAutor Pramod
Wenn Sie einen mac verwenden und sublime text 3, das ist, was Sie tun.
Gehen Sie zu Ihrem
/Packages/User/
und erstellen Sie eine Datei namensPython.sublime-settings
.In der Regel
/Packages/User
ist in Ihrem~/Library/Application Support/Sublime Text 3/Packages/User/Python.sublime-settings
wenn Sie mac os x verwenden.Dann setzen Sie diese in die
Python.sublime-settings
.Kredit geht an Mark Byer ' s Antwort, sublime text 3 docs und python style guide.
Diese Antwort ist vor allem für Leser, die hatte das gleiche Problem und stolpert über dies und sind mit sublime text 3 auf Mac OS X.
InformationsquelleAutor Kim Stacks
Ich habe den gleichen Fehler, Das ist, was ich getan habe um das Problem zu lösen.
Vor Einzug:
Einrückung Fehler: erwartet einen eingerückten block.
Nach Einzug:
Gut funktioniert. Nach der REGISTERKARTE Raum.
InformationsquelleAutor MAX
Sollten Sie einen editor (oder IDE) Unterstützung der Python-syntax. Sie können markieren Sie Quell-code und basic-format prüfen.
Zum Beispiel: Eric4, Spyder, Ninjia, oder Emacs, Vi.
InformationsquelleAutor wuliang