gpt4 book ai didi

python - 如何在Python中模拟.fetchall()?

转载 作者:行者123 更新时间:2023-12-01 05:31:57 33 4
gpt4 key购买 nike

这个问题最好的标题是“如何将字典列表转换为元组列表”,除非我不能 100% 确定这是正确的。

我正在修改我在网上找到的一个抓取工具,它使用 .fetchall() 从数据库中获取数据。

cur.execute("SELECT num, location FROM table WHERE location='My Town';")
the_query = cur.fetchall()

因此,脚本的其余部分期望 the_query 是一个元组列表,我认为意味着 the_query 看起来像这样:

[(081143282, 'My Town'),(091338218, 'My Town')] ...

我修改后的这个 scraper 版本必须从 JSON feed 中获取数据,而不是使用 fetchall 从 sqlite 数据库中获取数据。使用 demjson.decode(),我最终得到如下数据:

[{u'num': u'081143282', u'location': u'My Town'}, {u'num': u'081143282', u'location': u'My Town'}]

再次,我认为这是一个字典列表,但由于我仍在学习这些不同的结构,所以我可能是错的。

我尝试使用 .item() 和 zip(*) 将 demjson.decode() 的结果转换为元组列表,但到目前为止我无法使其工作。

有人可以指导我完成这个吗?

最佳答案

您可以迭代字典列表,并使用 values() 函数从每个字典中获取所有值,然后将它们转换为元组。

data = [{u'num': u'081143282', u'location': u'My Town'},
{u'num': u'081143282', u'location': u'My Town'}]
print [(int(currentDict["num"]), currentDict["location"]) for currentDict in data]

输出

[(81143282, u'My Town'), (81143282, u'My Town')]

关于python - 如何在Python中模拟.fetchall()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20026868/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com