我有打印的公共IP对正在运行的实例代码,如何打印EC2标签名称以及IP地址?
regions = ['us-east-1','us-west-1','us-west-2','eu-west-1','sa-east-1','ap-southeast-1','ap-southeast-2','ap-northeast-1']
for region in regions:
client = boto3.client('ec2',aws_access_key_id=ACCESS_KEY,aws_secret_access_key=SECRET_KEY,region_name=region,)
addresses_dict = client.describe_addresses()
for eip_dict in addresses_dict['Addresses']:
if 'PrivateIpAddress' in eip_dict:
print eip_dict['PublicIp']
这是好的,现在我也想打印tag name
并将其存储在另一个字典,我知道我这个可以这样做:
regions = ['us-east-1','us-west-1','us-west-2','eu-west-1','sa-east-1','ap-southeast-1','ap-southeast-2','ap-northeast-1']
for region in regions:
client = boto3.client('ec2',aws_access_key_id=ACCESS_KEY,aws_secret_access_key=SECRET_KEY,region_name=region,)
dex_dict = client.describe_tags()
for dexy_dict in dex_dict['Tags']:
print dexy_dict['Value']
问题是我如何将它结合在一个函数中并使用2个字典:一个存储IP,另一个存储标记名?请帮助
您是否在寻找一个结构为{client:[IP,tag_name]}的字典? –
是的,但我需要能够将这些值传递给另一个def,所以请帮助我如何返回 – PythonFreak