问题

我有一个从MySQL数据库中提取数据的列表。使用SQLAlchemy

selectAA1 = conn.execute('
            SELECT YIELD_EXPECTED_QTY as x, YIELD_ACTUAL_QTY as y
            FROM obj2mart')


我这么远

keys = ["x", "y"]

values = []
for row in selectAA1:
    values.append(row[0])
    values.append(row[1])
print (values)


此代码的结果是:

[3, 198, 3, 198, 3, 198, 3, 198, 3, 198, ...]

我想要的是一个字典列表,这些字典将这些键映射到每个列表,即'x''y'

结果应该是字典列表:

[{ x: 3, y: 198 }, { x: 3, y: 198}, { x: 3, y: 198} , ...]

我尝试过的

dictionary = {}
dictionary = dict(zip(keys, values))
print (dictionary)


但是,此代码仅返回一个:

{ 'x': 3, 'y': 198 }

我是python的新手。有人能帮我吗?

注意:我正在使用Python 3.7

最佳答案

我假设您的查询根据您引用行的方式返回列表列表。

这应该给你你想要的

dictionary = [dict(zip(keys, values)) for values in selectAA1]

关于python - 将字典追加到Python 3.7中的列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49104670/

10-10 21:16