2ちゃんねるまとめで、Pythonの話題がちょいと出てきてて、コードを書きやすいとか色々おべっか臭いレスが目立っていたけど、その中にインデントに関する話題があったので、ちょっと調べてみた。話によるとloopとかで{}がないらしく、インデントが結構重要らしいです。
for文であえてインデントをかえてみる
以下コードを書いてみた
for i in range(2)
print(i)
print(i)
///実行後
File "test2.py", line 3
print(i)
^
IndentationError: unexpected indent
ほう。こしゃくな。エラーと抜かす。英語はわからんが、私にもわかる。インデントが悪いと言ってることに。。。
インデントを修正して再度実行
for i in range(2):
print(i)
print(i)
///実行結果
0
0
1
1
今度は文句を言われなかった。今度は、先頭の半角スペースをタブにして実行してみるとエラーなし。
先頭を全角スペースという、マルチバイトをあえてまぜてみる
File "test2.py", line 2
print(i)
^
SyntaxError: invalid character in identifier
よくわからんが、文字が問題あると言ってるように見える。当たり前か。
結論
ブロックごとのインデントルールさえ一致していれば、基本的にいいらしい。タブでも半角スペースでも。
よかったね。