使用 mypy-boto3-builder 7.11.1 生成的 boto3.Personalize 1.24.44 服务的类型注释
项目描述
mypy-boto3-个性化
boto3.Personalize 1.24.44服务的类型注释 兼容VSCode、 PyCharm、 Emacs、 Sublime Text、 mypy、 pyright和其他工具。
由 mypy-boto3-builder 7.11.1生成。
更多信息可以在 boto3-stubs页面和 mypy-boto3-personalize 文档中找到。
了解它如何帮助查找和修复潜在错误:
如何安装
VSCode 扩展
将
AWS Boto3
扩展添加到您的 VSCode 并运行AWS boto3: Quick Start
命令。
单击Modify
并选择boto3 common
和Personalize
。
来自带有 pip 的 PyPI
安装boto3-stubs
服务Personalize
。
# install with boto3 type annotations
python -m pip install 'boto3-stubs[personalize]'
# Lite version does not provide session.client/resource overloads
# it is more RAM-friendly, but requires explicit type annotations
python -m pip install 'boto3-stubs-lite[personalize]'
# standalone installation
python -m pip install mypy-boto3-personalize
如何卸载
python -m pip uninstall -y mypy-boto3-personalize
用法
VSCode
- 安装 Python 扩展
- 安装 Pylance 扩展
- 设置
Pylance
为您的 Python 语言服务器 boto3-stubs[personalize]
在您的环境中安装:
python -m pip install 'boto3-stubs[personalize]'
类型检查和代码完成现在都应该可以工作了。不需要显式类型注释,boto3
像往常一样编写代码。
PyCharm
boto3-stubs-lite[personalize]
在您的环境中安装:
python -m pip install 'boto3-stubs-lite[personalize]'`
类型检查和代码完成现在都应该可以工作了。需要显式类型注释。
使用boto3-stubs
包代替隐式类型发现。
Emacs
- 安装
boto3-stubs
您在环境中使用的服务:
python -m pip install 'boto3-stubs[personalize]'
- 安装use-package、 lsp、 company和 flycheck包
- 安装lsp-pyright包
(use-package lsp-pyright
:ensure t
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp))) ; or lsp-deferred
:init (when (executable-find "python3")
(setq lsp-pyright-python-executable-cmd "python3"))
)
- 确保 emacs 使用您安装的环境
boto3-stubs
类型检查现在应该可以工作了。不需要显式类型注释,boto3
像往常一样编写代码。
崇高的文本
- 安装
boto3-stubs[personalize]
您在环境中使用的服务:
python -m pip install 'boto3-stubs[personalize]'
- 安装LSP-pyright包
类型检查现在应该可以工作了。不需要显式类型注释,boto3
像往常一样编写代码。
其他 IDE
未经测试,但只要您的 IDE 支持mypy
or pyright
,一切都应该工作。
我的
- 安装
mypy
:python -m pip install mypy
boto3-stubs[personalize]
在您的环境中安装:
python -m pip install 'boto3-stubs[personalize]'`
类型检查现在应该可以工作了。不需要显式类型注释,boto3
像往常一样编写代码。
版权
- 安装
pyright
:npm i -g pyright
boto3-stubs[personalize]
在您的环境中安装:
python -m pip install 'boto3-stubs[personalize]'
或者,您可以安装boto3-stubs
到typings
文件夹。
类型检查现在应该可以工作了。不需要显式类型注释,boto3
像往常一样编写代码。
显式类型注释
客户端注释
PersonalizeClient
为boto3.client("personalize")
.
from boto3.session import Session
from mypy_boto3_personalize import PersonalizeClient
client: PersonalizeClient = Session().client("personalize")
# now client usage is checked by mypy and IDE should provide code completion
分页器注释
mypy_boto3_personalize.paginator
模块包含所有分页器的类型注释。
from boto3.session import Session
from mypy_boto3_personalize import PersonalizeClient
from mypy_boto3_personalize.paginator import (
ListBatchInferenceJobsPaginator,
ListBatchSegmentJobsPaginator,
ListCampaignsPaginator,
ListDatasetExportJobsPaginator,
ListDatasetGroupsPaginator,
ListDatasetImportJobsPaginator,
ListDatasetsPaginator,
ListEventTrackersPaginator,
ListFiltersPaginator,
ListRecipesPaginator,
ListRecommendersPaginator,
ListSchemasPaginator,
ListSolutionVersionsPaginator,
ListSolutionsPaginator,
)
client: PersonalizeClient = Session().client("personalize")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
list_batch_inference_jobs_paginator: ListBatchInferenceJobsPaginator = client.get_paginator("list_batch_inference_jobs")
list_batch_segment_jobs_paginator: ListBatchSegmentJobsPaginator = client.get_paginator("list_batch_segment_jobs")
list_campaigns_paginator: ListCampaignsPaginator = client.get_paginator("list_campaigns")
list_dataset_export_jobs_paginator: ListDatasetExportJobsPaginator = client.get_paginator("list_dataset_export_jobs")
list_dataset_groups_paginator: ListDatasetGroupsPaginator = client.get_paginator("list_dataset_groups")
list_dataset_import_jobs_paginator: ListDatasetImportJobsPaginator = client.get_paginator("list_dataset_import_jobs")
list_datasets_paginator: ListDatasetsPaginator = client.get_paginator("list_datasets")
list_event_trackers_paginator: ListEventTrackersPaginator = client.get_paginator("list_event_trackers")
list_filters_paginator: ListFiltersPaginator = client.get_paginator("list_filters")
list_recipes_paginator: ListRecipesPaginator = client.get_paginator("list_recipes")
list_recommenders_paginator: ListRecommendersPaginator = client.get_paginator("list_recommenders")
list_schemas_paginator: ListSchemasPaginator = client.get_paginator("list_schemas")
list_solution_versions_paginator: ListSolutionVersionsPaginator = client.get_paginator("list_solution_versions")
list_solutions_paginator: ListSolutionsPaginator = client.get_paginator("list_solutions")
字面量
mypy_boto3_personalize.literals
模块包含从形状中提取的文字,可在用户代码中用于类型检查。
from mypy_boto3_personalize.literals import (
DomainType,
ImportModeType,
IngestionModeType,
ListBatchInferenceJobsPaginatorName,
ListBatchSegmentJobsPaginatorName,
ListCampaignsPaginatorName,
ListDatasetExportJobsPaginatorName,
ListDatasetGroupsPaginatorName,
ListDatasetImportJobsPaginatorName,
ListDatasetsPaginatorName,
ListEventTrackersPaginatorName,
ListFiltersPaginatorName,
ListRecipesPaginatorName,
ListRecommendersPaginatorName,
ListSchemasPaginatorName,
ListSolutionVersionsPaginatorName,
ListSolutionsPaginatorName,
ObjectiveSensitivityType,
RecipeProviderType,
TrainingModeType,
PersonalizeServiceName,
ServiceName,
ResourceServiceName,
PaginatorName,
RegionName,
)
def check_value(value: DomainType) -> bool:
...
打字字典
mypy_boto3_personalize.type_defs
模块包含组装到类型化字典的结构和形状,以进行额外的类型检查。
from mypy_boto3_personalize.type_defs import (
AlgorithmImageTypeDef,
AutoMLConfigTypeDef,
AutoMLResultTypeDef,
BatchInferenceJobConfigTypeDef,
S3DataConfigTypeDef,
BatchInferenceJobSummaryTypeDef,
BatchSegmentJobSummaryTypeDef,
CampaignConfigTypeDef,
CampaignSummaryTypeDef,
CategoricalHyperParameterRangeTypeDef,
ContinuousHyperParameterRangeTypeDef,
TagTypeDef,
ResponseMetadataTypeDef,
DataSourceTypeDef,
RecommenderConfigTypeDef,
CreateSchemaRequestRequestTypeDef,
DatasetExportJobSummaryTypeDef,
DatasetGroupSummaryTypeDef,
DatasetGroupTypeDef,
DatasetImportJobSummaryTypeDef,
DatasetSchemaSummaryTypeDef,
DatasetSchemaTypeDef,
DatasetSummaryTypeDef,
DatasetTypeDef,
DefaultCategoricalHyperParameterRangeTypeDef,
DefaultContinuousHyperParameterRangeTypeDef,
DefaultIntegerHyperParameterRangeTypeDef,
DeleteCampaignRequestRequestTypeDef,
DeleteDatasetGroupRequestRequestTypeDef,
DeleteDatasetRequestRequestTypeDef,
DeleteEventTrackerRequestRequestTypeDef,
DeleteFilterRequestRequestTypeDef,
DeleteRecommenderRequestRequestTypeDef,
DeleteSchemaRequestRequestTypeDef,
DeleteSolutionRequestRequestTypeDef,
DescribeAlgorithmRequestRequestTypeDef,
DescribeBatchInferenceJobRequestRequestTypeDef,
DescribeBatchSegmentJobRequestRequestTypeDef,
DescribeCampaignRequestRequestTypeDef,
DescribeDatasetExportJobRequestRequestTypeDef,
DescribeDatasetGroupRequestRequestTypeDef,
DescribeDatasetImportJobRequestRequestTypeDef,
DescribeDatasetRequestRequestTypeDef,
DescribeEventTrackerRequestRequestTypeDef,
EventTrackerTypeDef,
DescribeFeatureTransformationRequestRequestTypeDef,
FeatureTransformationTypeDef,
DescribeFilterRequestRequestTypeDef,
FilterTypeDef,
DescribeRecipeRequestRequestTypeDef,
RecipeTypeDef,
DescribeRecommenderRequestRequestTypeDef,
DescribeSchemaRequestRequestTypeDef,
DescribeSolutionRequestRequestTypeDef,
DescribeSolutionVersionRequestRequestTypeDef,
EventTrackerSummaryTypeDef,
FilterSummaryTypeDef,
GetSolutionMetricsRequestRequestTypeDef,
HPOObjectiveTypeDef,
HPOResourceConfigTypeDef,
IntegerHyperParameterRangeTypeDef,
PaginatorConfigTypeDef,
ListBatchInferenceJobsRequestRequestTypeDef,
ListBatchSegmentJobsRequestRequestTypeDef,
ListCampaignsRequestRequestTypeDef,
ListDatasetExportJobsRequestRequestTypeDef,
ListDatasetGroupsRequestRequestTypeDef,
ListDatasetImportJobsRequestRequestTypeDef,
ListDatasetsRequestRequestTypeDef,
ListEventTrackersRequestRequestTypeDef,
ListFiltersRequestRequestTypeDef,
ListRecipesRequestRequestTypeDef,
RecipeSummaryTypeDef,
ListRecommendersRequestRequestTypeDef,
ListSchemasRequestRequestTypeDef,
ListSolutionVersionsRequestRequestTypeDef,
SolutionVersionSummaryTypeDef,
ListSolutionsRequestRequestTypeDef,
SolutionSummaryTypeDef,
ListTagsForResourceRequestRequestTypeDef,
OptimizationObjectiveTypeDef,
TunedHPOParamsTypeDef,
StartRecommenderRequestRequestTypeDef,
StopRecommenderRequestRequestTypeDef,
StopSolutionVersionCreationRequestRequestTypeDef,
UntagResourceRequestRequestTypeDef,
BatchInferenceJobInputTypeDef,
BatchInferenceJobOutputTypeDef,
BatchSegmentJobInputTypeDef,
BatchSegmentJobOutputTypeDef,
DatasetExportJobOutputTypeDef,
CampaignUpdateSummaryTypeDef,
UpdateCampaignRequestRequestTypeDef,
CreateCampaignRequestRequestTypeDef,
CreateDatasetGroupRequestRequestTypeDef,
CreateDatasetRequestRequestTypeDef,
CreateEventTrackerRequestRequestTypeDef,
CreateFilterRequestRequestTypeDef,
CreateSolutionVersionRequestRequestTypeDef,
TagResourceRequestRequestTypeDef,
CreateBatchInferenceJobResponseTypeDef,
CreateBatchSegmentJobResponseTypeDef,
CreateCampaignResponseTypeDef,
CreateDatasetExportJobResponseTypeDef,
CreateDatasetGroupResponseTypeDef,
CreateDatasetImportJobResponseTypeDef,
CreateDatasetResponseTypeDef,
CreateEventTrackerResponseTypeDef,
CreateFilterResponseTypeDef,
CreateRecommenderResponseTypeDef,
CreateSchemaResponseTypeDef,
CreateSolutionResponseTypeDef,
CreateSolutionVersionResponseTypeDef,
EmptyResponseMetadataTypeDef,
GetSolutionMetricsResponseTypeDef,
ListBatchInferenceJobsResponseTypeDef,
ListBatchSegmentJobsResponseTypeDef,
ListCampaignsResponseTypeDef,
ListTagsForResourceResponseTypeDef,
StartRecommenderResponseTypeDef,
StopRecommenderResponseTypeDef,
UpdateCampaignResponseTypeDef,
UpdateRecommenderResponseTypeDef,
CreateDatasetImportJobRequestRequestTypeDef,
DatasetImportJobTypeDef,
CreateRecommenderRequestRequestTypeDef,
RecommenderSummaryTypeDef,
RecommenderUpdateSummaryTypeDef,
UpdateRecommenderRequestRequestTypeDef,
ListDatasetExportJobsResponseTypeDef,
ListDatasetGroupsResponseTypeDef,
DescribeDatasetGroupResponseTypeDef,
ListDatasetImportJobsResponseTypeDef,
ListSchemasResponseTypeDef,
DescribeSchemaResponseTypeDef,
ListDatasetsResponseTypeDef,
DescribeDatasetResponseTypeDef,
DefaultHyperParameterRangesTypeDef,
DescribeEventTrackerResponseTypeDef,
DescribeFeatureTransformationResponseTypeDef,
DescribeFilterResponseTypeDef,
DescribeRecipeResponseTypeDef,
ListEventTrackersResponseTypeDef,
ListFiltersResponseTypeDef,
HyperParameterRangesTypeDef,
ListBatchInferenceJobsRequestListBatchInferenceJobsPaginateTypeDef,
ListBatchSegmentJobsRequestListBatchSegmentJobsPaginateTypeDef,
ListCampaignsRequestListCampaignsPaginateTypeDef,
ListDatasetExportJobsRequestListDatasetExportJobsPaginateTypeDef,
ListDatasetGroupsRequestListDatasetGroupsPaginateTypeDef,
ListDatasetImportJobsRequestListDatasetImportJobsPaginateTypeDef,
ListDatasetsRequestListDatasetsPaginateTypeDef,
ListEventTrackersRequestListEventTrackersPaginateTypeDef,
ListFiltersRequestListFiltersPaginateTypeDef,
ListRecipesRequestListRecipesPaginateTypeDef,
ListRecommendersRequestListRecommendersPaginateTypeDef,
ListSchemasRequestListSchemasPaginateTypeDef,
ListSolutionVersionsRequestListSolutionVersionsPaginateTypeDef,
ListSolutionsRequestListSolutionsPaginateTypeDef,
ListRecipesResponseTypeDef,
ListSolutionVersionsResponseTypeDef,
ListSolutionsResponseTypeDef,
BatchInferenceJobTypeDef,
CreateBatchInferenceJobRequestRequestTypeDef,
BatchSegmentJobTypeDef,
CreateBatchSegmentJobRequestRequestTypeDef,
CreateDatasetExportJobRequestRequestTypeDef,
DatasetExportJobTypeDef,
CampaignTypeDef,
DescribeDatasetImportJobResponseTypeDef,
ListRecommendersResponseTypeDef,
RecommenderTypeDef,
AlgorithmTypeDef,
HPOConfigTypeDef,
DescribeBatchInferenceJobResponseTypeDef,
DescribeBatchSegmentJobResponseTypeDef,
DescribeDatasetExportJobResponseTypeDef,
DescribeCampaignResponseTypeDef,
DescribeRecommenderResponseTypeDef,
DescribeAlgorithmResponseTypeDef,
SolutionConfigTypeDef,
CreateSolutionRequestRequestTypeDef,
SolutionTypeDef,
SolutionVersionTypeDef,
DescribeSolutionResponseTypeDef,
DescribeSolutionVersionResponseTypeDef,
)
def get_structure() -> AlgorithmImageTypeDef:
return {
...
}
这个怎么运作
全自动
的mypy-boto3-builder为每个服务仔细生成类型注解,耐心等待boto3
更新。它为您提供插入式注释,并确保:
- 涵盖所有可用
boto3
服务。 - 每个
boto3
服务的每个公共类和方法都会从文档中提取有效的类型注释(botocore
如果类型不正确,请归咎于文档)。 - 类型注释包括最新的文档。
- 每种方法都提供了文档链接。
- 为了可读性,代码由black和 isort处理。
什么是新的
实现的功能
- 全类型注释
boto3
和botocore
库aiobotocore
mypy
,pyright
,VSCode
,PyCharm
,Sublime Text
和Emacs
兼容性Client
,ServiceResource
,Resource
,Waiter
Paginator
为每个服务键入注释TypeDefs
为每个服务生成Literals
为每个服务生成- 自动发现类型
boto3.client
和boto3.session
调用 - 自动发现类型
session.client
和session.session
调用 - 自动发现类型
client.get_waiter
和client.get_paginator
调用 - 自动发现类型
ServiceResource
和Resource
集合 - 自动发现
aiobotocore.Session.create_client
呼叫类型
最新变化
生成器更改日志可以在 Releases中找到。
版本控制
mypy-boto3-personalize
版本与相关boto3
版本相同,遵循PEP 440格式。
谢谢
- Allie Fitter for boto3-type-annotations,这个包是基于他的工作
- 一个很棒的格式化工具的黑人开发者
- 蒂莫西·埃德蒙·克罗斯利 (Timothy Edmund Crosley ) 的 isort及其灵活度
- mypy开发人员为我们做了所有肮脏的工作
- pyright团队为类型化 Python 的新时代
文档
所有服务类型注释都可以在 boto3 文档中找到
支持和贡献
这个包是自动生成的。请在mypy-boto3-builder存储库中报告任何错误或请求新功能 。