0

对于 的实例,您将如何执行此操作xml.etree.cElementTree.Element

$ python
Python 2.7.1 (r271:86832, Jun 16 2011, 16:59:05) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
>>> from xml.etree.cElementTree import Element 
>>> obj = Element('aaa')
>>> obj
<Element 'aaa' at 0x101bde270>
>>> dir(obj)
['__copy__', '__deepcopy__', '__reduce__', 'append', 'clear', 'extend', 'find', 'findall', 'findtext', 'get', 'getchildren', 'getiterator', 'insert', 'items', 'iter', 'iterfind', 'itertext', 'keys', 'makeelement', 'remove', 'set']
>>> obj.tag
'aaa'
4

2 回答 2

3

如果通过 custom__getattr__或返回__getattribute__属性,则不尝试就无法知道是否会返回属性,并且不尝试所有可能的名称就无法获得完整列表。您可以通过 获取静态属性列表dir()

于 2011-09-15T08:21:31.353 回答
1

xml.etree.ElementTree.Element对象确实有一个__dict__.

>>> from xml.etree.ElementTree import Element  
>>> obj = Element('aaa')
>>> obj.__dict__
{'attrib': {}, 'tag': 'aaa', '_children': []}

__dict__是当前定义的属性的字典。dir()调用__dir__(),可能会被覆盖。

于 2011-09-16T08:07:31.683 回答