Type annotations for boto3.DynamoDB 1.14.22 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-dynamodb
Type annotations for boto3.DynamoDB 1.14.22 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.22.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 80213430cca856195557660a2c1072e6e5116aa1dbacb1fbd783c0328083b854 |
|
MD5 | 4e7cf8237c59a141a260e709ee77bf06 |
|
BLAKE2b-256 | b61141d6591005248ab0de41faea6e5f93b643b374a7e440170494d6a3e2eaa8 |
Hashes for mypy_boto3_dynamodb-1.14.22.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb59af2e9bac1eed9c0d323afd5c9cbf647532bdf371c8769df04e96fabb99f4 |
|
MD5 | 521fc955538829e8a262784d9e357adf |
|
BLAKE2b-256 | 71a74b54a1cfa1a3e46d998e678cdec5381a1ea25e422f98335d31f70403e0d2 |