pythonのmax / min関数は意外と便利

2014-03-03 追記

もう少し詳しい記事を書きました。 pythonで最大値、最小値を求める色々

pythonの組み込み関数でmaxとかminってやつがあるじゃないですか。 あれ、意外と便利なのよね。

具体的に何が便利かというと、keyっていうキーワード引数があるのです。 これを使うと、

>>> score = [['ありす', 70], ['ぼぶ', 40], ['ちゃーりー', 80]]

みたいな点数のリストで

>>> print '最高得点は{0}さんの{1}点!'.format(*max(score, key=lambda x: x[1]))
最高得点はちゃーりーさんの80点

なんて事が出来たりして。

・・・というのをついさっき知ったよ。わざわざfor回してた私は何だったんだ。

本題とは関係ないけれど、max関数の前にある*。これも結構便利。 アンパックってやつ。 応用すると

>>> print '{0}{username}さん。{sex}の方ですね?'.format('こんにちは', **{'username':'アリス', 'sex':'女性'})
こんにちはアリスさん女性の方ですね

的なことも出来る。べんりー。


参考: