在Python中转义保留关键字[Protocol Buffer autogenerated class]

时间:2016-06-27 18:34:01

标签: python protocol-buffers

所以我有点修复。 我正在使用Google协议缓冲区,而且架构中的一个字段被命名为“from”。 我正在使用python,所以每次我尝试访问它时,都会出现语法错误。 [ex - SomeClass.from - >语法错误]

无论如何以某种方式访问​​该字段而不使用其标识符?

也许有办法逃避Python中的保留关键字? (其中一个答案已经说不,但是......)

或许某些protobuf特定的解决方案?

由于

1 个答案:

答案 0 :(得分:2)

提取数据后,您始终可以使用from语句将from_保存到getattr(var, "from")(避免命名空间冲突的pythonic方式);即

SomeClass # is a protocol-buffer
SomeClass.from_ = getattr(SomeClass, "from")

然后你只需使用.from_就可以了。