Type annotations for boto3.DynamoDB 1.14.48 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-dynamodb
Type annotations for boto3.DynamoDB 1.14.48 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.48.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc065764829727bd0e3b42c8777f54b00348786f7601a0496005d657944fcb9c |
|
MD5 | bf75688b0d79b02caa015a65c04c21ed |
|
BLAKE2b-256 | 8bf31e1d34d356b5e907401e181a0e0a2fc49dd5dea6f19aea5eb44524e1edeb |
Hashes for mypy_boto3_dynamodb-1.14.48.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f84e070d5fe83d5a00234bebc2e98a51d6126c2904baf727b182a90e6039ff7b |
|
MD5 | 6218f0d5a549e01879583fe78f471f07 |
|
BLAKE2b-256 | e2afc34557de09ecebc54c4020c2a669ac3ff0b8e35cab77ee13cd0e5fc454fb |