我正在尝试创建一个程序,从sqlite3中提取一列数据并用它来计算不同的东西(平均值,stdv等) 这是我到目前为止所遇到的问题以及我遇到的问题:
from math import *
import sqlite3
conn = sqlite3.connect('personinfo.sqlite3')
def main():
ages_iterator = conn.execute("SELECT age from person")
age_list = [a[0] for a in ages_iterator]
# average age
average = (sum(age_list))/len(age_list)
我收到以下错误: average =(sum(age_list))/ len(age_list) TypeError:+:'int'和'str'
的不支持的操作数类型如何更正我提取数据的方式,以便我可以从中计算平均值?
答案 0 :(得分:2)
这样做
age_list = [int(a[0]) for a in ages_iterator]
列表默认为字符串,并且你正在使用它们进行数学运算,通过将它们声明为整数然后它知道你希望它们是数字。