0

テーブル person(id, name, email) から Mysql からデータを取得しています。テーブルには多くの行があります。ループ内のjson配列に入れようとしています。ただし、json 配列では、新しい配列で上書きされます。

   for row in results:
        persons = {
                     [{
                        'personId' : row[0],
                        'personName' : row[1],
                        'personEmail' : row[2]
                    },]
                 }
    print json.dumps(persons)

誰でも解決策を教えてもらえますか?

4

1 に答える 1

1

コードでは、 for ループの各反復で、辞書に行 (「人」) を追加するのではなく、現在の行である 1 つのメンバーを持つ Python 辞書として人を再構築しています。次の行に沿って何かを書き直す必要があります。

persons={}
for row in results:
    persons[row[0]] = {                    
                        'personId' : row[0],
                        'personName' : row[1],
                        'personEmail' : row[2]                    
                 }
print json.dumps(persons)
于 2012-09-20T19:11:31.573 に答える