title: Use Python pool.map to have multiple processes perform operations on a list
body: <p>I'm trying to start 6 threads each taking an item from the list files, removing it, then printing the value.</p>
  
  <pre><code>from multiprocessing import Pool
  
  files = ['a','b','c','d','e','f']
  
  def convert(file):
      process_file = files.pop()
      print process_file
  
  if __name__ == '__main__':
  
      pool = Pool(processes=6)
      pool.map(convert,range(6))
  </code></pre>
  
  <p>The expected output should be:</p>
  
  <pre><code>a
  b
  c
  d
  e
  f
  </code></pre>
  
  <p>Instead, the output is:</p>
  
  <pre><code>f
  f
  f
  f
  f
  f
  </code></pre>
  
  <p>What's going on? Thanks in advance.</p>