Examples#
Auto-generated documentation for S3 type annotations stubs module types-aiobotocore-s3.
Client#
Implicit type annotations#
Can be used with types-aioboto3[s3]
package installed.
Write your S3
code as usual,
type checking and code completion should work out of the box.
# S3Client usage example
from aioboto3.session import Session
session = Session()
async with session.client("s3") as client: # (1)
result = await client.abort_multipart_upload() # (2)
- client: S3Client
- result: AbortMultipartUploadOutputTypeDef
# ListDirectoryBucketsPaginator usage example
from aioboto3.session import Session
session = Session()
async with session.client("s3") as client: # (1)
paginator = client.get_paginator("list_directory_buckets") # (2)
async for item in paginator.paginate(...):
print(item) # (3)
- client: S3Client
- paginator: ListDirectoryBucketsPaginator
- item: ListDirectoryBucketsOutputTypeDef
# BucketExistsWaiter usage example
from aioboto3.session import Session
session = Session()
async with session.client("s3") as client: # (1)
waiter = client.get_waiter("bucket_exists") # (2)
await waiter.wait()
- client: S3Client
- waiter: BucketExistsWaiter
Explicit type annotations#
With types-aioboto3-lite[s3]
or a standalone types_aiobotocore_s3
package, you have to explicitly specify
client: S3Client
type annotation.
All other type annotations are optional, as types should be discovered automatically. However, these type annotations can be helpful in your functions and methods.
# S3Client usage example with type annotations
from aioboto3.session import Session
from types_aiobotocore_s3.client import S3Client
from types_aiobotocore_s3.type_defs import AbortMultipartUploadOutputTypeDef
from types_aiobotocore_s3.type_defs import AbortMultipartUploadRequestRequestTypeDef
session = Session()
client: S3Client
async with session.client("s3") as client: # (1)
kwargs: AbortMultipartUploadRequestRequestTypeDef = {...} # (2)
result: AbortMultipartUploadOutputTypeDef = await client.abort_multipart_upload(**kwargs) # (3)
- client: S3Client
- kwargs: AbortMultipartUploadRequestRequestTypeDef
- result: AbortMultipartUploadOutputTypeDef
# ListDirectoryBucketsPaginator usage example with type annotations
from aioboto3.session import Session
from types_aiobotocore_s3.client import S3Client
from types_aiobotocore_s3.paginator import ListDirectoryBucketsPaginator
from types_aiobotocore_s3.type_defs import ListDirectoryBucketsOutputTypeDef
session = Session()
client: S3Client
async with session.client("s3") as client: # (1)
paginator: ListDirectoryBucketsPaginator = client.get_paginator("list_directory_buckets") # (2)
async for item in paginator.paginate(...):
item: ListDirectoryBucketsOutputTypeDef
print(item) # (3)
- client: S3Client
- paginator: ListDirectoryBucketsPaginator
- item: ListDirectoryBucketsOutputTypeDef
# BucketExistsWaiter usage example with type annotations
from aioboto3.session import Session
from types_aiobotocore_s3.client import S3Client
from types_aiobotocore_s3.waiter import BucketExistsWaiter
session = Session()
async with session.client("s3") as client: # (1)
waiter = client.get_waiter("bucket_exists") # (2)
await waiter.wait()
- client: S3Client
- waiter: BucketExistsWaiter
Service Resource#
Implicit type annotations#
Can be used with types-aioboto3[s3]
package installed.
# S3ServiceResource usage example
from aioboto3.session import Session
session = Session()
async with session.resource("s3") as resource: # (1)
result = resource.Bucket() # (2)
- resource: S3ServiceResource
- result:
# ServiceResourceBucketsCollection usage example
from aioboto3.session import Session
session = Session()
resource = session.resource("s3") # (1)
collection = resource.buckets # (2)
for item in collection:
print(item) # (3)
- resource: S3ServiceResource
- collection: S3ServiceResource
- item: Bucket
Explicit type annotations#
With types-aioboto3-lite[s3]
or a standalone types_aiobotocore_s3
package, you have to explicitly specify
resource: S3ServiceResource
type annotation.
All other type annotations are optional, as types should be discovered automatically. However, these type annotations can be helpful in your functions and methods.
# S3ServiceResource usage example with type annotations
from aioboto3.session import Session
from types_aiobotocore_s3.service_resource import S3ServiceResource
from types_aiobotocore_s3.service_resource import Bucket
session = Session()
resource: S3ServiceResource
async with session.resource("s3") as resource: # (1)
result: Bucket = resource.Bucket() # (2)
- resource: S3ServiceResource
- result:
# ServiceResourceBucketsCollection usage example with type annotations
from aioboto3.session import Session
from types_aiobotocore_s3.service_resource import S3ServiceResource
from types_aiobotocore_s3.service_resource import ServiceResourceBucketsCollection
from types_aiobotocore_s3.service_resource import Bucket
session = Session()
resource: S3ServiceResource
async with session.resource("s3") as resource: # (1)
collection: ServiceResourceBucketsCollection = resource.buckets # (2)
for item in collection:
item: Bucket
print(item) # (3)
- resource: S3ServiceResource
- collection: S3ServiceResource
- item: Bucket