<Python> mapの挙動の違い Python2 と Python3 で、、、
また、少しはまった。。。
Python2とPython3でmap
の挙動が違う、、、
適当にインターネットで勉強してたら、Python2の例を見てたら、はまった、、、
Python2の場合、リストを返す。
In [1]: lst = ['1', '2', '3'] In [2]: map(int, lst) Out[2]: [1, 2, 3]
Python3の場合、オブジェクト(イタレータな)を返す。
In [1]: lst = ['1','2','3'] In [2]: map(int, lst) Out[2]: <map at 0x2b2268489cf8>
ちゅうことで、Python3の場合、list()
しないとあかん。
In [3]: list(map(int, lst)) Out[3]: [1, 2, 3]
ここで教えてもらった。。。 postd.cc