在C中,如果你有一个变量名,并且你想在protobuf中访问一个变量
# define get_value(variable, variable_name, store){ \
store = variable->name_variable_name \
}
python中是否有类似的功能?
我能想到的另一种选择就是做一个大的if else案例
if protobuf_message.type = "LISTENER1":
message = protobuf_message.LISTENER1
elif protobuf_message.listener2 = "LISTENER2":
message = protobuf_message.LISTENER2
我想做这样的事情
listener_type = protobuf_message.type
message = protobuf_message.listener_type
任何建议都将不胜感激
答案 0 :(得分:2)
您正在寻找getattr
功能。
listener_type = protobuf_message.type
message = getattr(protobuf_message, listener_type)