簡體   English   中英

如何在lambda python函數中將json數組轉換為json對象

[英]How to convert json array to json object in lambda python function

如何在lambda python函數中將json數組轉換為json對象,以下是我的lambda代碼:

import sys
import logging
import pymysql
import json
rds_host=".com"
name="name"
password="pass"
db_name="DB"
port = 3306
def save_events(event):
result = []
conn = pymysql.connect(rds_host, user=name, passwd=password, db=db_name, 
connect_timeout=30)
with conn.cursor() as cur:
  cur.execute("select * from bodyPart")
for row in cur:
  result.append(list(row))
print ("Data from RDS...")
print (result)
cur.close()
bodyparts = json.dumps(result)

def lambda_handler(event, context):
  save_events(event)
  return bodyparts

以下是輸出響應:

[[1, \"Chest\", \"link"], [2, \"Shoulder\", 
null], [3, \"Arms\", null]]

如何獲得像這樣的回應

 {id='1',
 name='chest',
 link='......', ....}

目前,您的功能save_events並未提及傳入的事件。但是,您所要解決的緊迫問題已通過以下代碼解決:

result = []

conn = pymysql.connect(rds_host,
        user=name,
        passwd=password,
        db=db_name,
        connect_timeout=30)

cursor = conn.cursor()
cursor.execute("SELECT * FROM bodyPart")

data = cursor.fetchall()
#data = [[1, "Chest", "link"], [2, "Shoulder", None], [3, "Arms", None]]

element = {}
for row in data:
    element["ident"], element["name"], element["link"] = row
    result.append(element)

print("Data from RDS...")
print json.dumps(result)
conn.close()

如評論中所述,您的行是字典而不是列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM