これは私のプログラムであり、次のエラーが表示されます。
def main():
print "hello"
if __name__=='__main__':
main()
エラー
File "hello.py", line 8
main()
^
IndentationError: expected an indented block
これは私のプログラムであり、次のエラーが表示されます。
def main():
print "hello"
if __name__=='__main__':
main()
File "hello.py", line 8
main()
^
IndentationError: expected an indented block
インデントが外れています。これを試して :
def main():
print "hello"
if __name__=='__main__':
main()
すべての関数ブロック、および if-else、ループ ブロックは、タブまたは 4 つのスペース (環境によって異なります) でインデントする必要があります。
if condition :
statements //Look at the indentation here
...
Out-of-block //And here
いくつかの説明については、これを参照してください。
Normal Code
Indent block
Indent block
Indent block 2
Indent block 2
やったほうがいい:
def main():
print "hello"
if __name__=='__main__':
main()
スペースまたはタブのいずれかです。
また、インデントはファイル全体で同じである必要はありませんが、各ブロックに対してのみです。
たとえば、このような作業ファイルを持つことができますが、お勧めしません。
print "hello"
if True:
[TAB]print "a"
[TAB]i = 0
[TAB]if i == 0:
[TAB][SPACE][SPACE]print "b"
[TAB][SPACE][SPACE]j = i + 1
[TAB][SPACE][SPACE]if j == 1:
[TAB][SPACE][SPACE][TAB][TAB]print "c
おそらく次のようなものが必要です。
def main():
print "hello"
if __name__=='__main__':
main()
凹みに注意してください。行頭の先頭の空白は行のインデント レベルを決定し、Python でステートメントのグループ化を決定するために使用されます。
コードは次のようになります。
def main():
print "hello"
if __name__=='__main__':
main()