我试图运行一个lambda函数,该函数需要attribute
关于AWS IoT Dash按钮,serialNumber
,并在DynamoDB中查询它。因此,它应该打印整行。
这是代码--->
from __future__ import print_function
import boto3
import json
import decimal
from boto3.dynamodb.conditions import Key, Attr
def lambda_handler(event, context):
print ('Init 1Push_Care_DATAprint')
print (event)
serialNumber = event['serialNumber']
class DecimalEncoder(json.JSONEncoder):
def default(self, o):
if isinstance(o, decimal.Decimal):
if o % 1 > 0:
return float(o)
else:
return int(o)
return super(DecimalEncoder, self).default(o)
dynamodb = boto3.resource('dynamodb',region_name='us-east-1')
table = dynamodb.Table('1Push_Care_USERinfo')
response = table.query(
KeyConditionExpression=Key('Device_ID').eq('serialNumber')
)
items = response['Items']
print(items)
以下是我一直收到的错误消息--->
module initialization error: name 'dynamodb' is not defined
答案 0 :(得分:0)
错误出现的原因是愚蠢的。简单的解决方案就是简单地删除一些标签。退格它们以便所有内容都有适当的缩进。