我的代码有问题。 该程序旨在解析文件,使用信息选择它并将它们保存在类的对象列表中。
但首先 - 它没有正确保存它们。事实上,什么都没有保存,它返回空记录。
我尝试完全创建最少的代码并进行处理。接下来它不起作用。我无法显示对象,不知道是否正确地将它们保存在类中。我还将xml更改为更小的样本,以查看搜索是否有误。
我想这很长一段时间,我的想法已经不多了,我想要一个线索。
最低代码
<p><a href="#"onclick="window.open('http://google.com');window.open('http://yahoo.com');">Click to open Google and Yahoo</a></p>
xml - 一条记录
from xml.dom import minidom
class Prot():
def __init__(self, name=''):
self.name = name
def addname(self, name):
for k in range(len(entry_list)):
names = entry_list[k].getElementsByTagName("Names")
for u in range(len(names)):
nam = names[u].getElementsByTagName("Name")
name.append(nam[u].firstChild.nodeValue)
print(nam[u].firstChild.nodeValue)
xml = minidom.parse('RESIDUES.XML')
entry_list = xml.getElementsByTagName("Entry")
mod_list = []
for e in range(len(entry_list)):
m = Prot(e)
mod_list.append(m)
答案 0 :(得分:0)
我非常喜欢xml.etree
这项任务。假设你的xml示例在另一个元素中有多个Entry
记录,我使用这个xml文件来测试我的代码:
<Records>
<Entry id="AA0003">
<Header>
<Code>AA0003</Code>
</Header>
<Names>
<Name>L-asparagine</Name>
<AlternateName>2,4-bis(azanyl)-4-oxobutanoic acid</AlternateName>
<AlternateName>2,4-diamino-4-oxobutanoic acid</AlternateName>
</Names>
</Entry>
<Entry id="??????">
<Header>
<Code>??????</Code>
</Header>
<Names>
<Name>N-Acetylglucosamine</Name>
</Names>
</Entry>
</Records>
以下是解析xml文件的代码:
from xml.etree import ElementTree
tree=ElementTree.parse('RESIDUES.XML')
for entry in tree.findall('Entry'):
print entry.find('Names/Name').text
这导致:
L-asparagine
N-Acetylglucosamine