我是这个 python/biopyhton 的新手,所以我很难弄清楚为什么下面的代码,几乎直接从 Biopython Cookbook 中提取出来,没有达到我的预期。
我原以为解释器最终会显示两个包含相同数字的列表,但我得到的只是一个列表,然后是一条消息说TypeError: 'generator' object is not subscriptable。
我猜 Medline.parse 步骤出了点问题,并且 efetch 的结果没有以允许后续交互提取 PMID 值的方式进行处理。或者,efetch 没有返回任何内容。
任何指向我做错了什么的指针?
谢谢
from Bio import Medline
from Bio import Entrez
Entrez.email = 'A.N.Other@example.com'
handle = Entrez.esearch(db="pubmed", term="biopython")
record = Entrez.read(handle)
print(record['IdList'])
items = record['IdList']
handle2 = Entrez.efetch(db="pubmed", id=items, rettype="medline", retmode="text")
records = Medline.parse(handle2)
for r in records:
print(records['PMID'])