对等查询结果,unicode数据与lis中的常规字符串不可比

2024-09-28 20:48:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我用peewee构建了一个查询:

nameGoEvidenceEarlier = Protein.select(Protein.entryname ,Evidence.evidencecode ,Go.go_domain, Go.go_term).join(ProteinGo).join(Evidence).switch(ProteinGo).join(Go).where(Evidence.ondate.year == 2013).order_by(Protein.entryname).naive()

然后迭代查询结果:

^{pr2}$

列表包含以下项目:

nonexpEvidenceList = ['IEA','ISS','ISO','ISA','ISM','IGC','IBA','IBD','IKR','IRD','RCA','TAS','NAS','IC','ND']

然后我遍历字典earlierDict并比较元组的第一个值是否(早期。证据代码)在非证据列表中:

for entryname,earlier_ontologyCodeTermList in earlierDict.items():
for o,c,t in earlier_ontologyCodeTermList:
    if c.encode('ascii') in nonexpEvidenceList:
       print c

但是这段代码不打印任何内容。一个显而易见的结论是,在nonexpectivelist中不存在c,但事实并非如此——当我打印c时,列表中所有可用的代码都存在。 我的猜测是打字的某些地方出了问题。在

我是不是忽略了什么?在


Tags: 代码in证据go列表forjoinprotein