Python 如果条件因未知原因失败

Python 如果条件因未知原因失败,python,python-3.x,Python,Python 3.x,我有以下Python3代码: parts = ['g109343.t1', '3e908dc966fefe367e64dc9d98b0d3ab', '1358', 'SMART', 'SM00343', '', '600', '616', '0.36', 'T', '17-07-2019', 'IPR001878', 'Zinc finger, CCHC-type', 'GO:0003676|GO:0008270'] trans_id=parts[0] db=parts[3] id=parts[

我有以下Python3代码:

parts = ['g109343.t1', '3e908dc966fefe367e64dc9d98b0d3ab', '1358', 'SMART', 'SM00343', '', '600', '616', '0.36', 'T', '17-07-2019', 'IPR001878', 'Zinc finger, CCHC-type', 'GO:0003676|GO:0008270']
trans_id=parts[0]
db=parts[3]
id=parts[4]

start=int(parts[6])
end=int(parts[7])
name="Name="+parts[5]
dbxref = "Dbxref=" + db + ':' + id
note="Note="+db
t=';'.join([name,dbxref,note])
print("!!!" + parts[11])

if len(parts) == 12:
    t = t + ";_Accession=" + parts[11]
if len(parts) == 14:
    go_terms = parts[13].split('|')
    t = t + ";Ontology_term=" + ','.join(go_terms)

print(t)
如果len(parts)==12:被触发,并且最终输出中缺少
\u加入
,为什么没有
,如下所示

!!!IPR001878
名称=;Dbxref=SMART:SM00343;注=智能;本体——术语=GO:0003676,GO:0008270

两个问题的答案相同:

len(零件)
输出[1]
14

因此它将永远不会进入条件。

部分作为
14
元素,这就是它给出该输出的原因,但是要知道有多少元素,请执行以下操作:

print(len(parts))
它将输出:

14

parts
在我看来好像有14个元素。
parts
有14个元素,而不是12个。请算一次。或者执行
打印(透镜(零件))