You could always make use of tuple-unpacking and try something like
[element for (element,) in cursor.fetchall()]
It feels slightly more pythonic to me, though not by much.
Thanks,
Nick Cash
-----Original Message-----
From: psycopg-owner@postgresql.org [mailto:psycopg-owner@postgresql.org] On Behalf Of W. Matthew Wilson
Sent: Tuesday, June 19, 2012 13:36
To: Daniele Varrazzo
Cc: psycopg@postgresql.org
Subject: Re: [psycopg] When I select a single column, can I prevent getting a list of one-element tuples?
On Sun, Jun 17, 2012 at 12:32 PM, Daniele Varrazzo <daniele.varrazzo@gmail.com> wrote:
> No, there's nothing like this. For me, any attempt to add a feature
> and let the user choose whether to return one-column queries just as
> lists or as one-item tuples (a cursor subclass? a function?) seems
> more verbose than the [r[0] for r in cur] or map(itemgetter(0), cur)
> to get the data the way you want.
Thanks for the reply! Mostly I wanted to make sure there wasn't already a standard solution out there.
For me, it just feels goofy to write something like [row[0] for row in cursor.fetchall()], but I understand where you
arecoming from.
I like the cursor subclass idea so maybe I'll take a shot at something like that.
Matt
--
W. Matthew Wilson
matt@tplus1.com
http://tplus1.com
--
Sent via psycopg mailing list (psycopg@postgresql.org) To make changes to your subscription:
http://www.postgresql.org/mailpref/psycopg