在 Python [协议缓冲区自动生成 class] 中转义保留关键字
Escape reserved keyword in Python [Protocol Buffer autogenerated class]
所以我有点修复了。
我正在使用 Google 协议缓冲区,恰好模式中的一个字段被命名为 "from"。
我正在使用 python,所以每次我尝试访问它时,都会出现语法错误。
[ex - SomeClass.from -> 语法错误]
是否可以在不使用其标识符的情况下以某种方式访问该字段?
也许是一种在 Python 中转义保留关键字的方法? (其中一个答案已经说不,但是......)
或者一些特定于 protobuf 的解决方案?
谢谢
提取数据后,您始终可以使用 getattr(var, "from")
语句将 from
保存到 from_
(避免命名空间冲突的 pythonic 方式);即
SomeClass # is a protocol-buffer
SomeClass.from_ = getattr(SomeClass, "from")
然后您只需使用 .from_
即可。
所以我有点修复了。 我正在使用 Google 协议缓冲区,恰好模式中的一个字段被命名为 "from"。 我正在使用 python,所以每次我尝试访问它时,都会出现语法错误。 [ex - SomeClass.from -> 语法错误]
是否可以在不使用其标识符的情况下以某种方式访问该字段?
也许是一种在 Python 中转义保留关键字的方法? (其中一个答案已经说不,但是......)
或者一些特定于 protobuf 的解决方案?
谢谢
提取数据后,您始终可以使用 getattr(var, "from")
语句将 from
保存到 from_
(避免命名空间冲突的 pythonic 方式);即
SomeClass # is a protocol-buffer
SomeClass.from_ = getattr(SomeClass, "from")
然后您只需使用 .from_
即可。