如何访问与保留关键字同名的属性?

pyt*_*ons 5 python keyword python-3.x

我正在调用一个返回AttributeDict具有许多属性的API ,例如tofrom.

要访问这些属性,我使用点表示法.例如,我使用object.to,并且工作正常.

当我尝试使用时object.from,我收到一个错误SyntaxError: invalid syntax.我认为这是因为fromPython中的关键字.

如果是这种情况,是否可以from使用点访问?现在,我正在使用object["from"],它正在工作,但与我的其余代码不匹配.

use*_*ica 4

虽然可以使用getattr来访问此类属性:

val = getattr(ad, 'from')
Run Code Online (Sandbox Code Playgroud)

这比ad['from']AttributeDict 支持的语法更麻烦,并且不能满足您对点符号的需求。

目前没有选项可以使用点符号访问此类属性。只需坚持索引即可。它处理保留名称、带有空格/连字符等的名称。其中,以及与现有方法冲突的名称(假设合理的 AttributeDict 实现)。即使您使用getattr,getattr(ad, 'get')仍然可能返回 AttributeDict 的get方法而不是键的值'get'