读取 DynamoDB 表的所有项目

Tee*_*Kay 5 python json amazon-dynamodb boto3 aws-lambda

我想读取 DynamoDb 表的所有项目。我正在使用 table.scan() 函数。它正在给我回应。但是,输出以随意的方式排列。我应该得到这样的输出 -

{
"Items": [
{
  "Name": "ABC",
  "Location": "sdkjc",
  "id": "abc"
},

{
  "Name": "DEF",
  "Location": "jfyef",
  "id": "def"
}
]
}
Run Code Online (Sandbox Code Playgroud)

但我得到 -

{
"Items": [
{
  "Name": "ABC",
  },
  {
  "Location": "sdkjc",
  "id": "abc"
  },

  {
  "Name": "DEF",
  "Location": "jfyef",
  },
  {
  "id": "def"
}
]
}
Run Code Online (Sandbox Code Playgroud)

代码 -

 import boto3
 dynamodb = boto3.resource("dynamodb")
 table = dynamodb.Table(event['tableName'])
 response = table.scan()
 print (response)
Run Code Online (Sandbox Code Playgroud)

输出中没有模式。可能是什么问题?

小智 2

尝试类似的东西

def read():
    dynamodb = boto3.resource('dynamodb', region_name='us-west-2')
    table = dynamodb.Table("test")
    items = table.scan()['Items']
    for item in items:
        print (item)
Run Code Online (Sandbox Code Playgroud)