我正在开发一个应用程序,检查一堆传感器的状态。
获得他们身份的方式非常简单:
sensor_name.get_status()
我想知道是否可以将所有传感器名称存储在字符串列表中,让for
为我做的工作,而不是写几个调用来检查所有这些传感器。
非常像这样:
sensors_list = ['sensor_name_1', 'sensor_name_2', 'sensor_name_3']
for sensor in sensors_list:
#call it :-)
我怎样才能完成这项工作?
答案 0 :(得分:4)
如何将名称保留在列表中,而不是将名称保留在列表中?
sensors = [sensor_1, sensor_2, sensor3]
for sensor in sensors:
sensor.get_status()
答案 1 :(得分:1)
使用locals
(我会将sensor_name_1
设置为min
函数,以便它可以调用:
>>> sensor_name_1 = min # just an example function
>>> locals()['sensor_name_1']([1,2,3])
1
对于您的具体示例,您可以这样做:
sensors_list = ['sensor_name_1', 'sensor_name_2', 'sensor_name_3']
for sensor in sensors
locals()[sensor].get_status()