map()
map(function, list, ...)の説明は以下の通り。
function を list の全ての要素に適用し、返された 値からなるリストを返します。 追加の list 引数を与えた場合、 function はそれらを引数として取らなければならず、関数は そのリストの全ての要素について個別に適用されます。 (snop) list 引数はどのようなシーケンス型でもかまいません。
なるほど。
基本形
def foo(x): return x * 2 map(foo, [0, 1, 2]) [0, 2, 4]
2つのリストを引数にする場合
def foo(x, y) return x + y map(foo, [0, 1, 2], [0, 10, 20]) [0, 11, 22]
辞書のキーを加工してリストを作る
def foo(oldkey): return oldkey + 100 map(foo, {0: 'abc', 1: 'def', 2: 'xyz'}) [100, 101, 102] map(foo, {0: 'abc', 1: 'def', 2: 'xyz'}.iterkeys()) [100, 101, 102]
辞書の値を加工してリストを作る
def foo(oldkey): return oldkey + 100 map(foo, {'abc': 0, 'def': 1, 'xyz': 2}.itervalues()) [100, 101, 102]