查找数据库中的数据行

时间:2015-01-05 17:05:03

标签: python python-2.7

我正在处理我的python脚本,因为我想计算数据库中每69行获取一个值列表。我需要一些代码帮助,因为其中一些是错误的。

当我尝试这个时:

test = con.cursor()
test.execute("SELECT COUNT(*) FROM programs")
x = test.fetchone()[0]
running_total = 1 #Again, you want to start counting at 1 for some reason
while running_total < x:
    running_total += 69
    print running_total

我会得到这样的结果:

70
139
208
277
346
415
484
553
622
691
760
829
898
967
1036
1105

这是我想要实现的目标:

1
70
139
208
277
346
415
484
553
622
691
760
829
898
967
1036

我想输出以1开头的值,然后输出70139208等等,直到我获得数据库中的最后69个值。示例:我的数据库中有1104行,我想要获取的最后69行是1036,忽略最后一行1104

另一个例子:如果我在数据库中添加另外69行数据,我有行1104以获得总行1173中的完整行,那么我想要获取的最后69行是{{ 1}}并忽略最后一行1104。这取决于我在数据库中添加了多少行数据。

您可以帮助我如何输出以1173开头的值,然后每次加起来69 170139 .. .etc直到我得到最后69行,然后忽略最后一行?

1 个答案:

答案 0 :(得分:0)

您应该使用范围/ xrange函数:

range(Python3)和xrange(Python2)具有以下形式:range(start, end, increment)其中start包含且end不包含。< / p>

test = con.cursor()
test.execute("SELECT COUNT(*) FROM programs")
x = test.fetchone()[0]
for running_total in xrange(1, x + 1, 69):
    print(running_total)

这样可以获得所需的输出,而无需采用C风格的增量。