2012-05-04 21 views
3

如何通過python中的google protobuffer對象的名稱以編程方式設置字段值。我已經檢查過文檔和API,但是它對我而言並不清楚,而且我也找不到任何示例。在python中使用google protobuffers反射

我想要做像做:

protoBufObj.set_field('foo', 42) 

感謝。

+1

如果你有任何Python對象,其中'x.foo = 42'工作,'setattr(x,'foo',42)'應該有完全相同的效果。 –

+0

@ThomasK工作。太糟糕了,我不能接受你的評論作爲答案。 – anio

+0

有回答說同樣的事情;-) –

回答

5

如果您有x.foo = 42工作的任何Python對象,setattr(x, 'foo', 42)應該具有完全相同的效果。這是一個內置的Python函數,與protobuffers無關。