リストと配列

Python のリストって、実装は配列ベースだろうとは思っていたのですが、今日 arrayモジュールというのを見つけて、実はリストは単純な配列とは違う賢いデータ構造だったりするのか! と一瞬期待に胸をときめかせてしまいました。

で、実際どうなのかというと Python の list と array の差は、(Cによる実装のレベルで)要素をポインタで持つか値で持つかの違いしかないみたいですね。array の取れる型はプリミティブ型に制限されています。

使いどころによっては結構差がでるのかもしれないですけど所詮定数倍。アルゴリズム的なギミックが特に見当たらなくてちょっとがっかり。