このようなものから:
print(get_indentation_level())
print(get_indentation_level())
print(get_indentation_level())
私はこのようなものを手に入れたいです:
1
2
3
この方法でコードを読み取ることができますか?
私が欲しいのは、コードのよりネストされた部分からの出力がよりネストされることです。これによりコードが読みやすくなるのと同じように、出力も読みやすくなります。
もちろん、たとえばを使用してこれを手動で実装することもできます.format()
が、私が念頭に置いていたのは、インデントレベルがprint(i*' ' + string)
どこにあるかというカスタムの印刷関数でしたi
。これは、私の端末で読みやすい出力を作成する簡単な方法です。
これを行うための手作業でのフォーマットの手間を省くより良い方法はありますか?
get_indentation_level()
ステートメントをコードに入れると、確実にそれを知ることができます。あなたはちょうど同じようにprint(3)
何でも直接することができます。より複雑になる可能性があるのは、関数呼び出しスタックでのネストの現在のレベルです。
depth
パラメータを明示的に渡し、他の関数に渡すときに必要に応じて適切な値を追加すると、より良い結果が得られると思います。コードのネストは、出力に必要なインデントに完全に対応しているとは限りません。