map
возвращает объект карты, который при исчерпании не даст значений. Таким образом, когда вы звоните list
во второй раз на ints
, он не сможет применить функцию ни к чему, тогда list(map(print,list(ints)))
вернет пустой список []
Проверьте, что происходит при применении list
дважды к одному и тому же объекту карты:
>>> li=['12','34']
>>> ints=map(int,li)
>>> ints
<map object at 0x7f4e375c7898>
>>> list(ints)
[12, 34]
>>> list(ints)
[]