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.
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
from aioboto3.session import Session
session = Session()
async with session.client("s3") as client: # (1)
paginator = client.get_paginator("list_multipart_uploads") # (2)
async for item in paginator.paginate(...):
print(item) # (3)
- client: S3Client
- paginator: ListMultipartUploadsPaginator
- item: ListMultipartUploadsOutputTypeDef
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.
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
from aioboto3.session import Session
from types_aiobotocore_s3.client import S3Client
from types_aiobotocore_s3.paginator import ListMultipartUploadsPaginator
from types_aiobotocore_s3.type_defs import ListMultipartUploadsOutputTypeDef
session = Session()
client: S3Client
async with session.client("s3") as client: # (1)
paginator: ListMultipartUploadsPaginator = client.get_paginator("list_multipart_uploads") # (2)
async for item in paginator.paginate(...):
item: ListMultipartUploadsOutputTypeDef
print(item) # (3)
- client: S3Client
- paginator: ListMultipartUploadsPaginator
- item: ListMultipartUploadsOutputTypeDef
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.
from aioboto3.session import Session
session = Session()
async with session.resource("s3") as resource: # (1)
result = resource.Bucket() # (2)
- resource: S3ServiceResource
- result:
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.
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:
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