Type annotations for boto3.DynamoDB 1.14.0 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-dynamodb
Type annotations for boto3.DynamoDB 1.14.0 service compatible with mypy, VSCode, PyCharm and other tools.
Generated by mypy-boto3-buider 2.2.0.
More information can be found on boto3-stubs page.
How to install
Make sure you have mypy installed and activated in your IDE.
Install boto3-stubs
for DynamoDB
service.
python -m pip install boto3-stubs[dynamodb]
How to use
Client annotations
DynamoDBClient
provides annotations for boto3.client("dynamodb")
.
import boto3
from mypy_boto3_dynamodb import DynamoDBClient, DynamoDBServiceResource
from mypy_boto3_dynamodb.paginator import (
ListBackupsPaginator,
ListTablesPaginator,
ListTagsOfResourcePaginator,
QueryPaginator,
ScanPaginator,
)
from mypy_boto3_dynamodb.service_resource import ServiceResourceTablesCollection, Table
from mypy_boto3_dynamodb.type_defs import ArchivalSummaryTypeDef, ...
from mypy_boto3_dynamodb.waiter import TableExistsWaiter, TableNotExistsWaiter
client: DynamoDBClient = boto3.client("dynamodb")
# now client usage is checked by mypy and IDE should provide code auto-complete
# works for session as well
session = boto3.session.Session(region="us-west-1")
session_client: DynamoDBClient = session.client("dynamodb")
Paginators annotations
mypy_boto3_dynamodb.paginator
module contains type annotations for all paginators.
client: DynamoDBClient = boto3.client("dynamodb")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
list_backups_paginator: ListBackupsPaginator = client.get_paginator("list_backups")
list_tables_paginator: ListTablesPaginator = client.get_paginator("list_tables")
list_tags_of_resource_paginator: ListTagsOfResourcePaginator = client.get_paginator("list_tags_of_resource")
query_paginator: QueryPaginator = client.get_paginator("query")
scan_paginator: ScanPaginator = client.get_paginator("scan")
Waiters annotations
mypy_boto3_dynamodb.waiter
module contains type annotations for all waiters.
client: DynamoDBClient = boto3.client("dynamodb")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
table_exists_waiter: TableExistsWaiter = client.get_waiter("table_exists")
table_not_exists_waiter: TableNotExistsWaiter = client.get_waiter("table_not_exists")
Service Resource annotations
DynamoDBServiceResource
provides annotations for boto3.resource("dynamodb")
.
resource: DynamoDBServiceResource = boto3.resource("dynamodb")
# now resource usage is checked by mypy and IDE should provide code auto-complete
# works for session as well
session = boto3.session.Session(region="us-west-1")
session_resource: DynamoDBServiceResource = session.resource("dynamodb")
Other resources annotations
mypy_boto3_dynamodb.service_resource
module contains type annotations for all resources.
resource: DynamoDBServiceResource = boto3.resource("dynamodb")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
my_table: Table = resource.Table(...)
Collections annotations
mypy_boto3_dynamodb.service_resource
module contains type annotations
for all DynamoDBServiceResource
collections.
resource: DynamoDBServiceResource = boto3.resource("dynamodb")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
tables: dynamodb_resources.ServiceResourceTablesCollection = resource.tables
Typed dictionations
mypy_boto3_dynamodb.type_defs
module contains structures and shapes assembled
to typed dictionaries for additional type checking.
def get_structure() -> ArchivalSummaryTypeDef:
return {
...
}
Dynamic type annotations
mypy_boto3
command generates boto3.client/resource
type annotations for
mypy_boto3_dynamodb
and other installed services.
# Run this command after you add or remove service packages
python -m mypy_boto3
Generated type annotations provide overloads for boto3.client
and boto3.resource
,
boto3.Session.client
and boto3.Session.resource
functions,
so explicit type annotations are not needed.
mypy
supports function overloads as expectedPyCharm
also supports function overloads, but consumes a lot of RAM, use carefully if you have many services installedVSCode
does not currently support function overloads, use explicit type annotations
# Type is discovered correctly by mypy and PyCharm
# VSCode still needs explicit type annotations
client = boto3.client("dynamodb")
resource = boto3.resource("dynamodb")
session_client = boto3.Session().client("dynamodb")
session_resource = boto3.Session().resource("dynamodb")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mypy-boto3-dynamodb-1.14.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad1ff43ae3a0917f286db579b0c98feebb99f955e944ad818dafe93c88b3dfa4 |
|
MD5 | 42fe1c2e78a96ffb0f77a9c2fa83a3a5 |
|
BLAKE2b-256 | 102ed2e5f65d02008560d4f22750ebc6a7224beabcd9111f3f36f27670730d4f |
Hashes for mypy_boto3_dynamodb-1.14.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18f7d7900a981d19c7c8f7e085e5628e8fba92b8c648b409dcff6a60fa78b13f |
|
MD5 | 99e362d087283838c9d7d1f598477d45 |
|
BLAKE2b-256 | 4e1c93bbd755620fc94a3867dc0bb05081209adcf0781478815c1c5661752700 |