如何在python命令中使用变量?

时间:2017-10-03 07:00:52

标签: python variables

我正在使用框架来检索无人机参数的值。我想使用的命令之一是vehicle.parameters 当我使用

vehicle.parameters['GPS_TO_INJECT']

效果很好,打印出127.0。现在我想将它包含在一个函数中,所以如果我使用:

def change_value():
    a = GPS_TO_INJECT
    vehicle.parameters['a']

它不起作用,打印我:

  

a = GPS_INJECT_TO NameError:未定义全局名称“GPS_INJECT_TO”

它出了什么问题?

3 个答案:

答案 0 :(得分:3)

首先,使用字符串a定义GPS_TO_INJECT,将第二个类型变量a定义为vehicle.parameters的键。

def change_value():
    a = 'GPS_TO_INJECT'
    vehicle.parameters[a]

正如您在第一个示例中所做的那样,您已将GPS_TO_INJECT作为字符串传递给vehicle.parameters,您在第二部分代码中也需要这样做。

答案 1 :(得分:0)

a是变量,而' a'是一个字符串。因此,你传递的不是变量。

此外,GPS_INJECT_TO未定义。它被认为是一个全局常量而不是字符串。

答案 2 :(得分:0)

以下列方式将值 GPS_TO_INJECT 分配给变量 a

a = "GPS_TO_INJECT"

完成后,尝试访问vehicle.parameters值为:

print vehicle.parameters[a]

对于Python 3,写道:

print(vehicle.parameters[a])