Pythonのpop()

beanz (2008年10月21日 17:05) | コメント(0) | トラックバック(0)

Pythonでプログラミングをしていると他の言語に比べてなんか足りないなと思うことがしばしばある。

他のLL言語には配列を操作する関数(メソッド)でshiftというのがある。
配列の最初の要素を削除してその要素を返すという機能だがこれがPythonには無い。
Perlであればshift(@list)、PHPであればarray_shift($list)、Rubyならarray.shiftとそれぞれそろっているから当然Pythonにも、と思ったのだがいくら探しても見つからなかった。

ただ今日、ふと本を読んでいたら代替のメソッドが見つかった。list.pop()だ。このメソッドも同様に配列を操作するためのものだがshiftと違って配列の最後の要素を返すものだ。

それぞれPerlやPHPにも有るがPythonのそれは引数にインデックスを指定する事でどの要素を返すかを指定できるようになっている。
引数無しだと最後の要素、0を指定すると最初の要素を返す。
要はlist.pop(0)で他の言語のshiftの代わりになるという事だ。
なるほどこれで関数名を1つ節約できる訳だ。
たぶんpythonistaにしてみたら超基本的な事なんだろうなあ。
勉強になりました。

カテゴリ:

トラックバック(0)

トラックバックURL: http://blog.beanz-net.jp/beanz_mtos/mt-tb.cgi/1

コメントする