我可以将关键字作为公共变量?

时间:2014-09-05 02:18:38

标签: python variables

我有一个protobuf消息,消息有一个变量,名称是"传递",这是python中的关键字。

我收到如下错误:

"语法错误:语法无效"

我为"传递"参数:

msg.pass = 1

如果我不想重命名"通过"我该怎么办?到" xxpass"?谢谢。

1 个答案:

答案 0 :(得分:4)

您可以使用setattr来说明:

  

这是getattr()的对应物。参数是一个对象,一个字符串和一个任意值。该字符串可以命名现有属性或新属性。如果对象允许,该函数会将值分配给属性。例如,setattr(x,' foobar',123)相当于x.foobar = 123。

所以在你的情况下,你可以使用:

setattr(msg, 'pass', 1)

请注意,要检索它,您需要getattr的对应部分:

val = getattr(msg, 'pass')