我正在尝试使用 web.py 的 database.select 从 MySQL 表(ipb_members)中获取一些数据。这是我正在使用的代码:members = db.select("ipb_members", where="name=\"asdfquerty\"")
它返回一个 iterbetter 的实例。我想弄清楚的是如何将其转换为字典或列表。我看到了这个,它建议使用 list(),但这只是将所有内容放在第一个索引中。我也试过 dict(),但也没有用。我究竟做错了什么?
这应该有效:
members = db.select("ipb_members", where="name=\"asdfquerty\"")
for member in members #members is IterBetter
print member.posts #member is Storage
请注意,如果您只需要迭代一次,则不必调用.list()
结果。db.select
你试过dict(members)
吗?
iterBetter 不是很方便,因为它只能迭代一次,这是将 iterBetter 转换为列表的代码:
list_conv_from_db = []
for menber in menbers:
temp = dict()
for key in menber:
temp[key]=menber[key]
list_conv_from_db.append(temp)
然后你得到 list_conv_from_db 你可以做你想做的一切!