>>74
ブロックについては間違ったインデントで誤認すると言うのを防ぐためのものだからそう言うのが嫌ならPythonを使うことを諦めるしかないな
if(...)
 if(...)
  a = ...
else
 b = ...

>>77
スコープはたしかに分かりにくいね
ただPythonは変数宣言がないからスコープ作るとその例だと
a = 0
with open(‘hoge.txt’, ‘r’) with f:
 a = 123 ← これ、ローカル変数じゃない
print(a) ←ブロックの外に出て表示可能
みたいな本来不要なコードを入れる羽目になるから痛し痒しだね