使用简单的功能,我可以获取存储在响应变量中的数据。使用打印语句,我可以正确显示数据。
ec2_client = boto3.client("ec2")
def instance_list(instance_name):
response = ec2_client.describe_instances(
Filters=[
{
'Name': 'tag:Name',
'Values': [ instance_name ]
}
]
)['Reservations']
return response
#print(response)
if __name__ == '__main__':
my_instance_list = instance_list("example-*")
但是,当尝试将上述函数的response值导入另一个函数时,错误为NameError: name 'response' is not defined
def my_list():
list = instance_list(response)
print(list)
看起来像是无法识别的东西。
答案 0 :(得分:2)
例如,您需要将变量传递给下一个函数
my_list(instance_list())
答案 1 :(得分:0)
基本思想是将一个函数的返回值用于另一个函数
您的功能应为:
def my_list():
# List is equal to the response value of instance list.
list = instance_list("example-*")
print(list)
def add_five_to_number(number):
number += 5
return number
def print_number(number):
higher_number = add_five_to_number(number)
print(higher_number)
test_number = 3
print_number(test_number)
# Returns 8