【发布时间】:2012-07-06 15:43:37
【问题描述】:
我想从文本文档中读取标记并检查特定的关键字。我该怎么做? 例如我的文件如下所示:
<protein id="Q11" name="HUMAN" length="655" crc64="30E1C1D138">
<match id="G3DSA:3.30.160.60" name="ZC2f_H2/iegse_NA-bd" dbname="GE3D" status="T" evd="HMPfm">
<ipr id="IPR013087" name="Zinc finger, H2-type/inrase, D-bindg" tpe="Dain" />
<ln stt="114" end="142" sc="1.0E-8" />
</match>
(我想跳过第一行并在第二行搜索token,dbname必须等于GE3D。如果是我想存储stt号和结束号。)
*所以我这样做了,但我不知道为什么它只返回一个数字作为开始和结束,因为多个数字应该满足要求: 从 lxml 导入主目录
文件名 = 'inQ14591.txt'
with open(filename,'rb') as f:
root = etree.parse(f)
for ln in root.xpath("/protein/match[@dbname='GE3D']/ln"):
start = ln.get("stt")
end = ln.get("end")
打印(stt)
打印结束
【问题讨论】:
-
你试过什么?
-
看起来像XML,你试过用lxml写解析器吗?