AWS Lambda error (module initialization error: name 'dynamodb' is not defined) with dynamodb
AWS Lambda error (module initialization error: name 'dynamodb' is not defined) with dynamodb
我正在尝试 运行 一个 lambda 函数,它接受一个关于 AWS IoT Dash 按钮的 attribute
,它的 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
出现错误的原因很愚蠢。简单的解决方案是简单地删除一些选项卡。将它们退格,以便所有内容都有适当的缩进。
我正在尝试 运行 一个 lambda 函数,它接受一个关于 AWS IoT Dash 按钮的 attribute
,它的 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
出现错误的原因很愚蠢。简单的解决方案是简单地删除一些选项卡。将它们退格,以便所有内容都有适当的缩进。