第二个嵌套 if 语句不识别声明的名称。我已经在第二个 if 语句之后注释掉了代码,但是我需要它。文件中有很多行。那些有 CDS 字符串的我需要一个符号,row[6]而那些有特征字符串的我需要一切,但我也需要知道这个符号。CDS 和特征行中的 ID 应该匹配,因此 test if t.group(2) == n.group(2)。我尝试了 continue 语句,但它仍然无法正常工作。谢谢大家的帮助  
Traceback (most recent call last):
  File "../scripts/gff_cds.py", line 22, in <module>
    print sign
NameError: name 'sign' is not defined
import sys, csv, re
gff_ref = open(sys.argv[1])
parse_ref = csv.reader(gff_ref, delimiter='\t')
writer = csv.writer(sys.stdout)
ref_list = [] 
for row in parse_ref:
    if len(row) > 1 and 'remark' not in row and 'CDS' in row:
        t = re.search('(Transcript):(\w+.\w+\.?[0-9]?)', row[8])
        temp = t.group(2)
        sign = row[6]
    #    continue
    if 'feature' in row:
        print sign, temp
    #    ref_dict = {}
    #    n = re.search('(\W\w+):(\w+.\w+\.?[0-9]?)', row[8])
    #    if temp == n.group(2):
    #        ref_dict['seqname'] = row[0]; ref_dict['start'] = int(row[3]);
    #        ref_dict['end'] = int(row[4]); ref_dict['strand'] = sign;
    #        ref_dict['id'] = t.group(2)
    #        
    #        ref_list.append(ref_dict)
例如
CHROMOSOME_I 特征 inferred_parent 13349410 13358674 。. . ID=成绩单:Y40B1A.3c
CHROMOSOME_I Coding_transcript CDS 13349410 13349478。+ 0 ID=CDS:Y40B1A.3c;父母=成绩单:Y40B1A.3c;状态=部分确认;wormpep=CE:CE45409
CHROMOSOME_I Coding_transcript CDS 13353007 13353245。+ 0 ID=CDS:Y40B1A.3c;父母=成绩单:Y40B1A.3c;状态=部分确认;wormpep=CE:CE45409
CHROMOSOME_I Coding_transcript CDS 13354069 13354225。+ 0 ID=CDS:Y40B1A.3c;父母=成绩单:Y40B1A.3c;状态=部分确认;wormpep=CE:CE45409