python错误:“内置函数”或“方法”类型的对象没有len()

python错误:“内置函数”或“方法”类型的对象没有len(),python,python-2.7,sqlite,Python,Python 2.7,Sqlite,我的当前代码有一个问题,我试图对每69行进行计数,以查看sqlite3数据库中有多少行通道 当我尝试这个: cur.execute('SELECT channel FROM programs WHERE channel GROUP BY channel') row_count = len(cur.fetchall) print row_count 它给了我一个错误: TypeError: object of type 'builtin_function_or_method' has no le

我的当前代码有一个问题,我试图对每69行进行计数,以查看sqlite3数据库中有多少行通道

当我尝试这个:

cur.execute('SELECT channel FROM programs WHERE channel GROUP BY channel')
row_count = len(cur.fetchall)
print row_count
它给了我一个错误:

TypeError: object of type 'builtin_function_or_method' has no len()
错误正在该行上跳转:

row_count = len(cur.fetchall)

您能否帮助我如何计数每69行,以查看sqlite3数据库中有多少行通道?

您正在尝试获取te cur.fetchall方法对象的长度。你没有调用这个方法

您需要在方法名称后添加以调用它,并首先获得完整结果:

row_count = len(cur.fetchall())
然而,这几乎没有效率。请数据库获取您的行数:

cur.execute('SELECT COUNT(DISTINCT channel) FROM programs WHERE channel')
row_count, = cur.fetchone()

我想你的意思是把频道当作;转换为数值和任何非零的行都包含在计数中。

您正在尝试获取te cur.fetchall方法对象的长度。你没有调用这个方法

您需要在方法名称后添加以调用它,并首先获得完整结果:

row_count = len(cur.fetchall())
然而,这几乎没有效率。请数据库获取您的行数:

cur.execute('SELECT COUNT(DISTINCT channel) FROM programs WHERE channel')
row_count, = cur.fetchone()

我想你的意思是把频道当作;转换为数值和任何非零的行都包含在计数中。

您的sql看起来不正确。。。Where子句应该有一个条件。。。或者你应该把它删掉。您可能需要逐个通道从程序组中选择通道您的sql看起来不正确。。。Where子句应该有一个条件。。。或者你应该把它删掉。您可能需要逐个频道从程序组中选择频道