这是一种可能的方法:我们维护路径列表并向后窥视以找到父节点。
path = []for event, elem in ET.iterparse(file_path, events=("start", "end")): if event == 'start': path.append(elem.tag) elif event == 'end': # process the tag if elem.tag == 'name': if 'members' in path: print 'member' else: print 'nonmember' path.pop()