DynamoDB Customization Reference

Valid DynamoDB Types

These are the valid item types to use with Boto3 Table Resource (dynamodb.Table) and DynamoDB:

Python Type DynamoDB Type
string String (S)
integer Number (N)
decimal.Decimal Number (N)
boto3.dynamodb.types.Binary Binary (B)
boolean Boolean (BOOL)
None Null (NULL)
string set String Set (SS)
integer set Number Set (NS)
decimal.Decimal set Number Set (NS)
boto3.dynamodb.types.Binary set Binary Set (BS)
list List (L)
dict Map (M)

Custom Boto3 Types

class boto3.dynamodb.types.Binary(value)[source]

A class for representing Binary in dynamodb

Especially for Python 2, use this class to explicitly specify binary data for item in DynamoDB. It is essentially a wrapper around binary. Unicode and Python 3 string types are not allowed.

DynamoDB Conditions

class boto3.dynamodb.conditions.Key(name)[source]
begins_with(value)

Creates a condtion where the attribute begins with the value.

Parameters:value -- The value that the attribute begins with.
between(low_value, high_value)
Creates a condtion where the attribute is between the low value and
the high value.
Parameters:
  • low_value -- The value that the attribute is greater than.
  • high_value -- The value that the attribute is less than.
eq(value)

Creates a condtion where the attribute is equal to the value.

Parameters:value -- The value that the attribute is equal to.
gt(value)

Creates a condtion where the attribute is greater than the value.

Parameters:value -- The value that the attribute is greater than.
gte(value)
Creates a condtion where the attribute is greater than or equal to
the value.
Parameters:value -- The value that the attribute is greater than or equal to.
lt(value)

Creates a condtion where the attribute is less than the value.

Parameters:value -- The value that the attribute is less than.
lte(value)
Creates a condtion where the attribute is less than or equal to the
value.
Parameters:value -- The value that the attribute is less than or equal to.
class boto3.dynamodb.conditions.Attr(name)[source]

Represents an DynamoDB item's attribute.

attribute_type(value)[source]

Creates a condition for the attribute type.

Parameters:value -- The type of the attribute.
begins_with(value)

Creates a condtion where the attribute begins with the value.

Parameters:value -- The value that the attribute begins with.
between(low_value, high_value)
Creates a condtion where the attribute is between the low value and
the high value.
Parameters:
  • low_value -- The value that the attribute is greater than.
  • high_value -- The value that the attribute is less than.
contains(value)[source]

Creates a condition where the attribute contains the value.

Parameters:value -- The value the attribute contains.
eq(value)

Creates a condtion where the attribute is equal to the value.

Parameters:value -- The value that the attribute is equal to.
exists()[source]

Creates a condtion where the attribute exists.

gt(value)

Creates a condtion where the attribute is greater than the value.

Parameters:value -- The value that the attribute is greater than.
gte(value)
Creates a condtion where the attribute is greater than or equal to
the value.
Parameters:value -- The value that the attribute is greater than or equal to.
is_in(value)[source]

Creates a condtion where the attribute is in the value,

Parameters:value (list) -- The value that the attribute is in.
lt(value)

Creates a condtion where the attribute is less than the value.

Parameters:value -- The value that the attribute is less than.
lte(value)
Creates a condtion where the attribute is less than or equal to the
value.
Parameters:value -- The value that the attribute is less than or equal to.
ne(value)[source]

Creates a condtion where the attribute is not equal to the value

Parameters:value -- The value that the attribute is not equal to.
not_exists()[source]

Creates a condtion where the attribute does not exist.

size()[source]

Creates a condition for the attribute size.

Note another AttributeBase method must be called on the returned size condition to be a valid DynamoDB condition.