title: Is there a Python equivalent of the Haskell 'let'
body: <p>Is there a Python equivalent of the Haskell 'let' expression that would allow me to write something like:</p>
  
  <pre><code>list2 = [let (name,size)=lookup(productId) in (barcode(productId),metric(size)) 
              for productId in list]
  </code></pre>
  
  <p>If not, what would be the <strong>most readable</strong> alternative?</p>
  
  <p>Added for clarification of the let syntax:</p>
  
  <pre><code>x = let (name,size)=lookup(productId) in (barcode(productId),metric(size))
  </code></pre>
  
  <p>is equivalent to</p>
  
  <pre><code>(name,size) = lookup(productId)
  x = (barcode(productId),metric(size))
  </code></pre>
  
  <p>The second version doesn't work that well with list comprehensions, though.</p>