Python 2.7 我使用捆绑的 elementtree 模块编写了一些代码。
commands = root.findall('{http://clish.sourceforge.net/XMLSchema}'
'VIEW/{http://clish.sourceforge.net/XMLSchema}COMMAND')
tree_list = []
for command in commands:
tree_list.append(list(command.iter()))
现在稍后在我所做的代码中:
for command in commands:
for i in command:
if "CONFIG" in str(i):
command.remove(i)
tree_list.append(list(command.iter()))
这很好用。但是,我只导入ElementTree.py
了它自己的最小安装,而不是import xml.etree.ElementTree as ET
. 由于某种原因,功能现在有所不同。第二次循环时,commands
我注意到没有什么可以循环,它是空的。因此,在第二个循环之前,我现在必须再次执行此代码以“重新填充” commands
:
commands = root.findall('{http://clish.sourceforge.net/XMLSchema}'
'VIEW/{http://clish.sourceforge.net/XMLSchema}COMMAND')
我想知道为什么会这样?导入的模块对此有何影响?也许导入不同的elementtree.py
是这样做的,但为什么它会影响生成器?