title: Python: list() function messes up map()
body: <p>I was playing a bit with the <code>map()</code> and <code>filter()</code> functions at python 3.
  I tried to take a list and filter it and then on the filter object to do a map function:</p>
  
  <pre><code>f = list(range(10))
  print(f)
  print('-----------')
  y = filter(lambda a: a &gt; 5, f)
  print(list(y))
  print(y)
  print(type(y))
  print('-----------')
  x = map(lambda value: value+1, y)
  print(list(y))
  print(y)
  print(type(y))
  print('-----------')
  print(list(x))
  print(x)
  print(type(x))
  </code></pre>
  
  <p>The result is:</p>
  
  <pre><code>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  -----------
  [6, 7, 8, 9]
  &lt;filter object at 0x7f46db255ac8&gt;
  &lt;class 'filter'&gt;
  -----------
  []
  &lt;filter object at 0x7f46db255ac8&gt;
  &lt;class 'filter'&gt;
  -----------
  []
  &lt;map object at 0x7f46db3fc128&gt;
  &lt;class 'map'&gt;
  </code></pre>
  
  <p>When I comment out the <code>print(list(y))</code> it suddenly works well.
  Did you encounter this? What am I doing wrong?
  I run python 3.6.3 on ubuntu.</p>