Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python dynamodb ExpressionAttributeValues包含无效键:语法错误;关键:_Python_Amazon Dynamodb - Fatal编程技术网

Python dynamodb ExpressionAttributeValues包含无效键:语法错误;关键:

Python dynamodb ExpressionAttributeValues包含无效键:语法错误;关键:,python,amazon-dynamodb,Python,Amazon Dynamodb,试图做一个update_项,如果找不到现有的属性(根据文档),它应该创建新属性,但是我得到了一个Sytax错误 我一整天都在绞尽脑汁,想弄明白为什么我会这样,但我似乎无法克服这一点。谢谢你的帮助 我得到的错误是: ClientError: An error occurred (ValidationException) when calling the UpdateItem operation: ExpressionAttributeValues contains invalid key:

试图做一个update_项,如果找不到现有的属性(根据文档),它应该创建新属性,但是我得到了一个Sytax错误

我一整天都在绞尽脑汁,想弄明白为什么我会这样,但我似乎无法克服这一点。谢谢你的帮助

我得到的错误是:

ClientError: An error occurred (ValidationException) when calling the UpdateItem operation:
   ExpressionAttributeValues contains invalid key: Syntax error; key: "var4"
霉菌代码:

dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('contacts')
    table.update_item(
    Key={'email': emailID},
    UpdateExpression=SET last_name = :var0, address_1_state = :var1, email_2 = :var2, phone = :var3, phone_2 = :var4

    ExpressionAttributeValues={
     'var0': 'Metzger', 
     'var1': 'CA', 
     'var2': 'none', 
     'var3': '949 302-9072', 
     'var4': '818-222-2311'
    }
    )

只需按如下方式更改该部分-

 ExpressionAttributeValues={
     ':var0': 'Metzger', 
     ':var1': 'CA', 
     ':var2': 'none', 
     ':var3': '949 302-9072', 
     ':var4': '818-222-2311'
    }

希望代码能够正常工作:)

在发布答案后,您是否修改了代码部分?答案代码看起来与问题中给出的代码相同…更改发生在密钥名称中。例如,从“var0”到:var0(添加了两个点)