Victor Subervi wrote:
Hi;
I have this code:
sql = 'describe %s %s;' % (optionsStore, option)
print sql
cursor.execute(sql)
descr = cursor.fetchone()
if len(descr) is not None:
Python complains:
*TypeError*: len() of unsized object
Please advise how to rewrite the last line so as to avoid the infamous
try/except.
TIA,
beno
What type of value do you expect 'descr' to get? Have you tried
printing type(descr) ?
I can only guess that the fetchone() method you're referring to is a
method on sqlite3.Cursor. If so, the docs I've got say:
>>>Fetches the next row of a query result set, returning a single
sequence, or None <constants.html#None> when no more data is available.
Of course None doesn't have a length, as it's not a collection, nor
equivalent to one. There's another thing wrong with your if-test.
len() returns an integer, so it'll never be equal to None. Presumably
you're trying to check for an empty sequence.
So your if test would need to be something like:
if descr is not None and len(descr) > 0:
This could be simplified, but I'd rather be explicit. But just for
completeness, I believe the following would work as well:
if descr:
DaveA
DaveA
--
http://mail.python.org/mailman/listinfo/python-list