为了
将变量传递到下面boto3 ec2
客户端请求的"过滤器"参数中,需要对以下内容进行哪些具体更改?
def getRtbId(vpcId,nameTag):
client = boto3.client('ec2', region_name='us-west-2')
response = client.describe_route_tables(
Filters=[
{'Name': 'vpc-id','Values': ['vpcId']},
{'Name': 'tag:Name','Values': ['nameTag']}
]
)
vpcId
和nameTag
的值仅在作为文本字符串输入时才有效。 但问题是,如您所见,这些值必须作为变量传递到命令中。 我们尝试将vpcId
值和nameTag
值作为变量传递的每个语法都会导致许多不同的无用语法错误之一。
位于此链接,但文档似乎对此问题没有帮助。
正确的语法是什么?
你不需要在参数中加上引号。引号是字符串文本语法的一部分,它们不是数据的一部分。如果你想从变量中获取值,只需将变量放在那里。
response = client.describe_route_tables(
Filters=[
{'Name': 'vpc-id','Values': [vpcId]},
{'Name': 'tag:Name','Values': [nameTag]}
]
)