这是我的调用:session.query(User.username,User.first_name,User.last_name).all()
它返回:[(‘myUsername’,’myFirstname’,’myLastname’)].
我希望它是以下格式:[{“username”:“myUsername”,“first_name”:“myFirstname”,“last_name”:“myLastname”}]
我试过[dict(zip([“username”,“first_name”,“lastname”],x))]
但它返回:[{‘username’:(‘myUsername’,’myFirstname’,’myLastname’)}]
解决方法:
返回的东西有一个包含元组的条目,你需要将它转换为一个列表:
In [123]:
[dict(zip(["username","first_name","lastname"], list(temp[0])))]
Out[123]:
[{'first_name': 'myFirstname',
'lastname': 'myLastname',
'username': 'myUsername'}]
在上面的代码示例中,它只有一个条目,因此在一般情况下,您需要迭代任何session.query().all()返回并填充您的dict.
标签:python,dictionary,sqlalchemy