import amara
def chain_attribute_call(obj, attlist):
"""
Allows to execute chain attribute calls
"""
splitted_attrs = attlist.split(".")
current_dom = obj
for attr in splitted_attrs:
current_dom = getattr(current_dom, attr)
return current_dom
doc = amara.parse("sample.xml")
print chain_attribute_call(doc, "X.Y.Z")
オブジェクトのチェーン属性呼び出しを文字列として実行するために、上記の不器用なスニペットを開発する必要がありました。これに対してもっと賢くて効率的な解決策があるかどうか私は興味があります。