Type annotations for boto3.DynamoDB 1.14.7 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-dynamodb
Type annotations for boto3.DynamoDB 1.14.7 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.7.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbbac2193e07e5aa31e3baaa2f8f9874cc81fa3305805cd5f093d7cb27b81ea5 |
|
MD5 | 10dd8a33b3c9b8b26d7f94e2e4178936 |
|
BLAKE2b-256 | 58aeac067f4121479f4a975c644e84cf5c9b75318c804fae43367d2ca0c3ab2e |
Hashes for mypy_boto3_dynamodb-1.14.7.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3da299ac6869144fe1da6d9203807281df6bcfb2b67aa75bf5d2e12992c88257 |
|
MD5 | 8a63a3ca3076495a0c3a016a93df9573 |
|
BLAKE2b-256 | 0445715bc1c44f8dd49873c21f3ca917849fbc7e22e8027ce59eb63656bce5d0 |