List comprehension to extract multiple fields from list of tuples : <p>I have a list of tuples</p>

<pre><code>servers = [('server1', 80 , 1, 2), ('server2', 443, 3, 4)]
</code></pre>

<p>I want to create a new list that only has the first two fields   as in:</p>

<pre><code> [('server1', 80), ('server2', 443)]
</code></pre>

<p>but I cannot see how to craft a list comprehension for more than one element.</p>

<pre><code>hosts = [x[0] for x in servers]  # this works to give me ['server1', server2']

hostswithports = [x[0], x[1] for x in servers] # this does not work
</code></pre>

<p>I prefer to learn the pythonic way vs using a loop - what am I doing wrong?</p>
