Python 3.x boto3从placement获取租约值时出现名称错误
试图制作一个脚本来收集有关AWS环境的信息。我只想从安置中获得租赁信息 在boto3中使用客户端时,我已尝试获取placement[租约],但出现错误 NameError:未定义名称“租约” 我也试着循环,如果匹配的话,只得到键值,但是我得到了 如果n[“键”]中的“租约”: TypeError:字符串索引必须是整数 以下是我目前的想法,如果租赁存在,我应该归还租赁Python 3.x boto3从placement获取租约值时出现名称错误,python-3.x,boto3,Python 3.x,Boto3,试图制作一个脚本来收集有关AWS环境的信息。我只想从安置中获得租赁信息 在boto3中使用客户端时,我已尝试获取placement[租约],但出现错误 NameError:未定义名称“租约” 我也试着循环,如果匹配的话,只得到键值,但是我得到了 如果n[“键”]中的“租约”: TypeError:字符串索引必须是整数 以下是我目前的想法,如果租赁存在,我应该归还租赁 for i in client.instances.all(): for n in i.placement:
for i in client.instances.all():
for n in i.placement:
if 'tenancy' in n['Key']:
tenancy = n['Value']
如果是主机默认值,我只想返回租约。不确定为什么我不能让placement dictionary只打印值。正如我所评论的,您使用的是boto3
资源
而不是客户端
。确定一下。要获得实例的租约,请执行以下操作
import boto3
ec2 = boto3.resource('ec2')
response = ec2.instances.all()
for item in response:
print(item.placement.get('Tenancy'))
您正在使用
资源
而不是客户端
。谢谢,我正在使用资源。无论出于什么原因,我认为我在使用客户端操作。谢谢,这很有帮助。