我尝试将boto3库作为文档http://boto3.readthedocs.io/网页进行测试。我尝试获取Cloudformation堆栈列表。所以我的代码是:
import boto3
client = boto3.client('cloudformation')
response = client.list_stacks(
NextToken='string',
StackStatusFilter=[
'CREATE_IN_PROGRESS'|'CREATE_FAILED'|'CREATE_COMPLETE'|'ROLLBACK_IN_PROGRESS'|'ROLLBACK_FAILED'|'ROLLBACK_COMPLETE'|'DELETE_IN_PROGRESS'|'DELETE_FAILED'|'DELETE_COMPLETE'|'UPDATE_IN_PROGRESS'|'UPDATE_COMPLETE_CLEANUP_IN_PROGRESS'|'UPDATE_COMPLETE'|'UPDATE_ROLLBACK_IN_PROGRESS'|'UPDATE_ROLLBACK_FAILED'|'UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS'|'UPDATE_ROLLBACK_COMPLETE'|'REVIEW_IN_PROGRESS',
]
)
print response
当我运行此命令时,收到如下错误消息:
TypeError: unsupported operand type(s) for |: 'str' and 'str'
有什么问题吗?我正在使用Python 2.7
答案 0 :(得分:5)
当你不应该包括管道符号(|
)时。他们在boto3文档上给出的语法只是向您展示所有可能的过滤条件。您需要使用逗号分隔可能的状态,而不是管道。或者,如果您想要所有 cloudformation堆栈,您可以省略StackStatusFilter
参数