On Sun, 31 Jul 2005 08:40:26 -0700, nephish wrote: > Hey there, > i have a simple database query that returns as a tuple the number of > rows that the query selected. > kinda like this > >>>> cursor.execute('select value from table where autoinc > 234') >>>> x = cursor.fetchall() >>>> print x > >>>> 21L
21L is not a tuple, it is a long integer. > ok, means 21 rows met the criteria of the query. but if there are none > that match, > like i do a > >>>> print x >>>> 0L > > how do i encorporate that into an equation ? > i have tried all kinds of stuff And did they work? If they didn't work, tell us the exact error message you got. > if x == 0L If x is a long integer, then that will work. Of just "if x == 0:" will work too. > if x(0) == None No. That means x is a function, and you are giving it an argument of 0, and it returns None. > if x == None You said that your query returns a tuple, but then gave an example where it returns a long int. None is not a tuple, nor a long int, so testing either of those things against None will never be true. Did you try any of these things in the interactive interpreter? Python is a great language for experimenting, because you can try this yourself: # run your setup code ... # and then do some experimenting cursor.execute('select value from table where autoinc > 99999999') # or some value that will never happen x = cursor.fetchall() print x What do you get? > anyway, what shoud i do to test if the result is empty? Long ints are never empty, but they can be zero: if x == 0: print "no rows were found" elif x == 1: print "1 row was found" else: print "%d rows were found" % x Tuples can be empty: if len(x) == 0: print "no rows were found" or if you prefer: if x == (): print "no rows were found" But the cleanest, most Pythonic way is just to do a truth-test: if x: print "something was found" else: print "x is empty, false, blank, nothing..." -- Steven. -- http://mail.python.org/mailman/listinfo/python-list