Pythonのお勉強 Part15
レス数が900を超えています。1000を超えると表示できなくなるよ。
0937Python初心者(復活)
2006/12/13(水) 13:16:09>初心者でなくても、リスト内包表記のネストの読みづらさは異常。
>対話環境で試行錯誤していて、出来上がったのがリスト内包表記
>のネストだったりすると、あとで読むときにえらく苦労するぞ。
Flat is better than nested.
これはPythonの言語仕様における原則の一つです。
つまり、インデントは深いネストを制限する効果も
ある訳です。ところがリスト内包表記でのネストは
この原則からは逸脱している。
ところが、コードの透過性という観点から視れば
全ての機能がそのコードで理解出来るから
ネスト構造もあながち否定されるべきものでもない。
要は、ネスト構造に伴う頭脳負荷にどこまで耐えられのか。
ワインバーガーは通常のプログラマの場合、5層以上の
ネスト構造は避けるべきだと云っている。
リスト内包表記の最後のコードに括弧が]]]]]までという
意味だが、慣れたLisperの場合には]]]]]]]]]10個程度は
理解可能のようです。勿論ある程度のインデントは必要で
しょうが。
逆に言えばどれだけのネスト構造に耐えられるかで
そのプログラマの頭脳耐性が分かるということです。
皆さんはどうでしょうか?
レス数が900を超えています。1000を超えると表示できなくなるよ。