1

'正在使用以下方法从 MySQL 数据库中获取一些数据:

cur.execute("SELECT memory FROM vm WHERE hv_id=5")
for row in cur.fetchall() :
print row[0]

这会打印出这样的内容:

512
1024
4096
4096
2048
4096
1024
6144
1024
1024
4096

我需要对上述内容求和并将其设置为变量以进行进一步计算。

4

2 回答 2

7

为什么不在SUM()查询本身中使用:

cur.execute("SELECT SUM(memory) FROM vm WHERE hv_id=5")
result = cur.fetchone()[0]
于 2013-08-27T13:09:49.090 回答
0

如果你正在寻找Pythonista的另一个答案

cur.execute("SELECT memory FROM vm WHERE hv_id=5")
result = sum(int(x) for x in cur.fetchall())
print result 

或者

result = sum(map(int, cur.fetchall()))
于 2013-08-27T13:22:35.230 回答