1

我有几个类使用一个内部子系统的 API。我们使用 lxml.objectify 解析并使用它的响应来通过 object.property 语法的节点。

但问题是代码变得非常混乱和非pythonic,因为在某些情况下,如果对象的某些属性不存在,API 只是不返回与该属性和子属性相关的整个 xml 节点。

这导致代码如下:

if hasattr(object,"property"):
    if hasattr(object.property,"subproperty"):
        etc...

有没有任何pythonic方式来做这样的事情?或者只是一些好的做法。在访问它之前检查每个属性是否存在变得令人头疼,也许可以只返回 None 以防万一它不存在?

4

0 回答 0