将sqlalchemy查询结果转换为dict列表

2024-09-26 18:04:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将查询结果转换为如下所示的dict列表:

result_dict = [{'category': 'failure', 'week': '1209', 'stat': 'tdc_ok', 'severityDue': '2_critic'}, {'category': 'failure', 'week': '1210', 'stat': 'tdc_nok', 'severityDue': '2_critic'}]

但是相反,我把它作为一个dict,因此用重复的键:

result_dict = {'category': 'failure', 'week': '1209', 'stat': 'tdc_ok', 'severityDue': '2_critic', 'category': 'failure', 'week': '1210', 'stat': 'tdc_nok', 'severityDue': '2_critic'}

我通过这样做得到这个结果:

for u in my_query.all():
     result_dict = u.__dict__

如何将sqlAlchemy查询结果转换为dict列表(每行都是dict)?

请帮忙


Tags: in列表forfailuremyokresultdict
3条回答

没有.all()

您可以尝试:

result_dict = [u.__dict__ for u in my_query.fetchall()]

试试看

result_dict = [u.__dict__ for u in my_query.all()]

除此之外,for循环之前的类型是什么?它的行为很奇怪。

现在可以了

result_dict = [u._asdict() for u in my_query.all()]

原因是u实际上不是一个元组,而是一个KeyedTuple。

关于这个thread的正确答案也会有帮助

相关问题 更多 >

    热门问题