[Python] loop
C/C++ を知っている人から見ると、Python のループ、特に forループ はかなり違和感があると思う。
while ループは、C とほとんど同じだ。
しかし、C では可能な次のようなコードはエラーになる。while 条件文 : 処理~ else: 条件文が False のときの処理~
hoge = func() という代入式が条件式の中に使えないのだ。while ( (hoge = func() ) != NULL) { 処理~ }
結構不便。
しかし、while ループの違和感は for ループの違和感に比べればかわいいもの。 Python の for ループは C とは全く違う。
ちなみに C/C++ の for ループはこうなる。for 代入ターゲット in シーケンスオブジェクト 処理~ else: 処理~
Python の for ループでは、C/C++ のそれに( ほとんどの場合 ) 見られるような カウンタが存在しないのだ。わたしが始めて Python のコードを見たとき、for ループの動作が 全く想像もできなかった理由がここにあった。for( 式1; 条件式; 式2 ) { 処理~ }
| 固定リンク
この記事へのコメントは終了しました。
コメント